2004-12-30 Sohail Somani
|
2004-12-30 Sohail Somani
|
|
|
PR ada/19128
|
PR ada/19128
|
* trans.c (gnat_to_gnu): Fix typo: Use correct return variable.
|
* trans.c (gnat_to_gnu): Fix typo: Use correct return variable.
|
|
|
2004-12-23 Eric Botcazou
|
2004-12-23 Eric Botcazou
|
|
|
* trans.c (Attribute_to_gnu): Adjust call to get_inner_reference.
|
* trans.c (Attribute_to_gnu): Adjust call to get_inner_reference.
|
* utils2.c (build_unary_op): Likewise.
|
* utils2.c (build_unary_op): Likewise.
|
|
|
2004-12-22 Richard Kenner
|
2004-12-22 Richard Kenner
|
|
|
* trans.c (mark_visited): Set TYPE_SIZES_GIMPLIFIED.
|
* trans.c (mark_visited): Set TYPE_SIZES_GIMPLIFIED.
|
|
|
2004-12-19 Richard Henderson
|
2004-12-19 Richard Henderson
|
|
|
* trans.c (gigi): Update gimplify_body call.
|
* trans.c (gigi): Update gimplify_body call.
|
|
|
2004-12-09 Nathan Sidwell
|
2004-12-09 Nathan Sidwell
|
|
|
* decl.c (gnat_substitute_in_type): Remove SET_TYPE case.
|
* decl.c (gnat_substitute_in_type): Remove SET_TYPE case.
|
|
|
2004-12-07 Ed Falis
|
2004-12-07 Ed Falis
|
|
|
* s-intman-vxworks.adb (Notify_Exception): removed useless check for
|
* s-intman-vxworks.adb (Notify_Exception): removed useless check for
|
current task being suspended.
|
current task being suspended.
|
|
|
* init.c (__gnat_clear_exception): added to reset VxWorks exception
|
* init.c (__gnat_clear_exception): added to reset VxWorks exception
|
count.
|
count.
|
(__gnat_map_signal): removed test for current task being suspended.
|
(__gnat_map_signal): removed test for current task being suspended.
|
|
|
2004-12-07 Gary Dismukes
|
2004-12-07 Gary Dismukes
|
|
|
* a-exexpr.adb (Others_Value, All_Others_Value): Change initial values
|
* a-exexpr.adb (Others_Value, All_Others_Value): Change initial values
|
from 16#BEEF# to 16#7FFF# to avoid exceeding Integer'Last on 16-bit
|
from 16#BEEF# to 16#7FFF# to avoid exceeding Integer'Last on 16-bit
|
targets (such as AAMP).
|
targets (such as AAMP).
|
|
|
2004-12-07 Ed Schonberg
|
2004-12-07 Ed Schonberg
|
|
|
* atree.adb (Visit_Itype): Create a new name for the generated itype,
|
* atree.adb (Visit_Itype): Create a new name for the generated itype,
|
because the back-end may otherwise treat it as a redefinition of the
|
because the back-end may otherwise treat it as a redefinition of the
|
old symbol.
|
old symbol.
|
|
|
2004-12-07 Eric Botcazou
|
2004-12-07 Eric Botcazou
|
|
|
* back_end.adb (Scan_Back_End_Switches): Accept --param.
|
* back_end.adb (Scan_Back_End_Switches): Accept --param.
|
|
|
* lang-specs.h: Accept --param.
|
* lang-specs.h: Accept --param.
|
|
|
2004-12-07 Vincent Celier
|
2004-12-07 Vincent Celier
|
|
|
* make.adb (Check_Mains, Switches_Of): Adapt to name changes in
|
* make.adb (Check_Mains, Switches_Of): Adapt to name changes in
|
package Prj (Current_Spec_Suffix => Ada_Spec_Suffix,
|
package Prj (Current_Spec_Suffix => Ada_Spec_Suffix,
|
Current_Body_Suffix => Ada_Body_Suffix).
|
Current_Body_Suffix => Ada_Body_Suffix).
|
Take into account Externally_Built attribute.
|
Take into account Externally_Built attribute.
|
|
|
* clean.adb (In_Extension_Chain): Always return False when one of the
|
* clean.adb (In_Extension_Chain): Always return False when one of the
|
parameter is No_Project.
|
parameter is No_Project.
|
(Clean_Project): Adapt to changes in package Prj (Lang_Ada =>
|
(Clean_Project): Adapt to changes in package Prj (Lang_Ada =>
|
Ada_Language_Index).
|
Ada_Language_Index).
|
(Gnatclean): Adapt to change in package Prj.Pars (no parameter
|
(Gnatclean): Adapt to change in package Prj.Pars (no parameter
|
Process_Languages for procedure Parse).
|
Process_Languages for procedure Parse).
|
|
|
* gnatcmd.adb (Carg_Switches): New table.
|
* gnatcmd.adb (Carg_Switches): New table.
|
(GNATCmd): Put all switches following -cargs in the Carg_Switches table.
|
(GNATCmd): Put all switches following -cargs in the Carg_Switches table.
|
Adapt to name changes in package Prj (Current_Spec_Suffix =>
|
Adapt to name changes in package Prj (Current_Spec_Suffix =>
|
Ada_Spec_Suffix, Current_Body_Suffix => Ada_Body_Suffix).
|
Ada_Spec_Suffix, Current_Body_Suffix => Ada_Body_Suffix).
|
|
|
* mlib-prj.adb: Adapt to changes in packages Prj and Prj.Com: type
|
* mlib-prj.adb: Adapt to changes in packages Prj and Prj.Com: type
|
Header_Num and function Hash are now declared in package Prj,
|
Header_Num and function Hash are now declared in package Prj,
|
not Prj.Com.
|
not Prj.Com.
|
|
|
* prj.adb (Suffix_Of): New function.
|
* prj.adb (Suffix_Of): New function.
|
(Set (Suffix)): New procedure.
|
(Set (Suffix)): New procedure.
|
(Hash): One function moved from Prj.Com
|
(Hash): One function moved from Prj.Com
|
(Is_Present, Language_Processing_Data_Of): New functions
|
(Is_Present, Language_Processing_Data_Of): New functions
|
(Set): Two new procedures
|
(Set): Two new procedures
|
(Add_Language_Name, Display_Language_Name): New procedures
|
(Add_Language_Name, Display_Language_Name): New procedures
|
|
|
* prj.ads: (Suffix_Of): New function
|
* prj.ads: (Suffix_Of): New function
|
(Set (Suffix)): New procedure
|
(Set (Suffix)): New procedure
|
Add several types and tables for multi-language support.
|
Add several types and tables for multi-language support.
|
(Header_Num): Type moved from Prj.Com
|
(Header_Num): Type moved from Prj.Com
|
(Hash): Two functions moved from Prj.Com
|
(Hash): Two functions moved from Prj.Com
|
(Is_Present, Language_Processing_Data_Of): New functions
|
(Is_Present, Language_Processing_Data_Of): New functions
|
(Set): Two new procedures
|
(Set): Two new procedures
|
(Add_Language_Name, Display_Language_Name): New procedures
|
(Add_Language_Name, Display_Language_Name): New procedures
|
(Naming): Component name changes:
|
(Naming): Component name changes:
|
Current_Spec_Suffix => Ada_Spec_Suffix,
|
Current_Spec_Suffix => Ada_Spec_Suffix,
|
Current_Body_Suffix => Ada_Body_Suffix. Add new components:
|
Current_Body_Suffix => Ada_Body_Suffix. Add new components:
|
Impl_Suffixes, Supp_Suffixes.
|
Impl_Suffixes, Supp_Suffixes.
|
(Project_Data): New components: Externally_Built, Supp_Languages,
|
(Project_Data): New components: Externally_Built, Supp_Languages,
|
First_Language_Processing, Supp_Language_Processing, Default_Linker,
|
First_Language_Processing, Supp_Language_Processing, Default_Linker,
|
Default_Linker_Path.
|
Default_Linker_Path.
|
|
|
* prj-attr.adb: Add new attributes Ada_Roots and Externally_Built and
|
* prj-attr.adb: Add new attributes Ada_Roots and Externally_Built and
|
new package Language_Processing with its attributes (Compiler_Driver,
|
new package Language_Processing with its attributes (Compiler_Driver,
|
Compiler_Kind, Dependency_Option, Compute_Dependency, Include_Option,
|
Compiler_Kind, Dependency_Option, Compute_Dependency, Include_Option,
|
Binder_Driver, Default_Linker).
|
Binder_Driver, Default_Linker).
|
|
|
* prj-com.ads, prj-com.adb (Hash): Function moved to package Prj.
|
* prj-com.ads, prj-com.adb (Hash): Function moved to package Prj.
|
(Header_Num): Type moved to package Prj
|
(Header_Num): Type moved to package Prj
|
|
|
* prj-env.adb: Adapt to name changes in package Prj
|
* prj-env.adb: Adapt to name changes in package Prj
|
(Current_Spec_Suffix => Ada_Spec_Suffix,
|
(Current_Spec_Suffix => Ada_Spec_Suffix,
|
Current_Body_Suffix => Ada_Body_Suffix).
|
Current_Body_Suffix => Ada_Body_Suffix).
|
|
|
* prj-ext.adb: Add the default project dir (/log/gnat) by
|
* prj-ext.adb: Add the default project dir (/log/gnat) by
|
default to the project path, except the "-" is one of the directories
|
default to the project path, except the "-" is one of the directories
|
in env var ADA_PROJECT_PATH.
|
in env var ADA_PROJECT_PATH.
|
(Current_Project_Path): Global variable, replacing Project_Path
|
(Current_Project_Path): Global variable, replacing Project_Path
|
that was in the body of Prj.Part.
|
that was in the body of Prj.Part.
|
(Project_Path): New function
|
(Project_Path): New function
|
(Set_Project_Path): New procedure
|
(Set_Project_Path): New procedure
|
Initialize Current_Project_Path during elaboration of the package
|
Initialize Current_Project_Path during elaboration of the package
|
Remove dependency on Prj.Com, no longer needed
|
Remove dependency on Prj.Com, no longer needed
|
|
|
* prj-ext.ads (Project_Path): New function
|
* prj-ext.ads (Project_Path): New function
|
(Set_Project_Path): New procedure
|
(Set_Project_Path): New procedure
|
|
|
* prj-nmsc.adb (Body_Suffix_Of): New function. Returns . when no
|
* prj-nmsc.adb (Body_Suffix_Of): New function. Returns . when no
|
suffix is defined for language .
|
suffix is defined for language .
|
(Find_Sources, Record_Other_Sources): Use Body_Suffix_Of, instead of
|
(Find_Sources, Record_Other_Sources): Use Body_Suffix_Of, instead of
|
accessing directly the components of Naming.
|
accessing directly the components of Naming.
|
(Look_For_Sources): Use Set (Suffix) to set the suffix of a language.
|
(Look_For_Sources): Use Set (Suffix) to set the suffix of a language.
|
Reorganise of this package.
|
Reorganise of this package.
|
Break procedure Check in several procedures.
|
Break procedure Check in several procedures.
|
|
|
* prj-nmsc.ads: Replace all procedures (Ada_Check,
|
* prj-nmsc.ads: Replace all procedures (Ada_Check,
|
Other_Languages_Check and Language_Independent_Check) with a single
|
Other_Languages_Check and Language_Independent_Check) with a single
|
procedure Check.
|
procedure Check.
|
|
|
* prj-pars.ads, prj-pars.adb (Parse): Remove parameter
|
* prj-pars.ads, prj-pars.adb (Parse): Remove parameter
|
Process_Languages, no longer needed.
|
Process_Languages, no longer needed.
|
|
|
* prj-part.adb (Project_Path): Move to the body of Prj.Ext as
|
* prj-part.adb (Project_Path): Move to the body of Prj.Ext as
|
Current_Project_Path.
|
Current_Project_Path.
|
Remove elaboration code, moved to the body of Prj.Ext
|
Remove elaboration code, moved to the body of Prj.Ext
|
Use new function Prj.Ext.Project_Path instead of old variable
|
Use new function Prj.Ext.Project_Path instead of old variable
|
Project_Path.
|
Project_Path.
|
(Post_Parse_Context_Clause): Get Resolved_Path as a case-sensitive path.
|
(Post_Parse_Context_Clause): Get Resolved_Path as a case-sensitive path.
|
When comparing with project paths on the stack, first put the resolved
|
When comparing with project paths on the stack, first put the resolved
|
path in canonical case.
|
path in canonical case.
|
(Parse_Single_Project): Set the path name of the project file in the
|
(Parse_Single_Project): Set the path name of the project file in the
|
tree to the normalized path.
|
tree to the normalized path.
|
|
|
* prj-proc.ads, prj-proc.adb (Check, Recursive_Check, Process): Remove
|
* prj-proc.ads, prj-proc.adb (Check, Recursive_Check, Process): Remove
|
parameter Process_Languages, no longer needed.
|
parameter Process_Languages, no longer needed.
|
(Recursive_Check): Call Prj.Nmsc.Check, instead of Ada_Check and
|
(Recursive_Check): Call Prj.Nmsc.Check, instead of Ada_Check and
|
Other_Languages_Check.
|
Other_Languages_Check.
|
|
|
* prj-tree.ads (Project_Name_And_Node): New component Canonical_Path
|
* prj-tree.ads (Project_Name_And_Node): New component Canonical_Path
|
to store the resolved canonical path of the project file.
|
to store the resolved canonical path of the project file.
|
Remove dependency to Prj.Com, no longer needed
|
Remove dependency to Prj.Com, no longer needed
|
|
|
* prj-util.adb: Adapt to name changes in package Prj
|
* prj-util.adb: Adapt to name changes in package Prj
|
(Current_Spec_Suffix => Ada_Spec_Suffix, Current_Body_Suffix =>
|
(Current_Spec_Suffix => Ada_Spec_Suffix, Current_Body_Suffix =>
|
Ada_Body_Suffix).
|
Ada_Body_Suffix).
|
|
|
* snames.ads, snames.adb: New standard names: Ada_Roots, Binder_Driver,
|
* snames.ads, snames.adb: New standard names: Ada_Roots, Binder_Driver,
|
Compiler_Driver, Compiler_Kind, Compute_Dependency, Default_Linker,
|
Compiler_Driver, Compiler_Kind, Compute_Dependency, Default_Linker,
|
Externally_Built, Include_Option, Language_Processing.
|
Externally_Built, Include_Option, Language_Processing.
|
|
|
* makegpr.adb: Numerous changes due to changes in packages
|
* makegpr.adb: Numerous changes due to changes in packages
|
Prj and Prj.Nmsc.
|
Prj and Prj.Nmsc.
|
|
|
* gnatls.adb: Add the default project dir (/log/gnat) by
|
* gnatls.adb: Add the default project dir (/log/gnat) by
|
default to the project path, except whe "-" is one of the directories
|
default to the project path, except whe "-" is one of the directories
|
in env var ADA_PROJECT_PATH.
|
in env var ADA_PROJECT_PATH.
|
(Gnatls): In verbose mode, add the new section "Project Search Path:"
|
(Gnatls): In verbose mode, add the new section "Project Search Path:"
|
|
|
2004-12-07 Robert Dewar
|
2004-12-07 Robert Dewar
|
|
|
* debug.adb: Document that -gnatdA automatically sets -gnatR3m
|
* debug.adb: Document that -gnatdA automatically sets -gnatR3m
|
|
|
* gnat1drv.adb (Gnat1drv): If debug flag A set, then automatically
|
* gnat1drv.adb (Gnat1drv): If debug flag A set, then automatically
|
set -gnatR3m mode.
|
set -gnatR3m mode.
|
|
|
* repinfo.adb (List_Rep_Info): Remove special handling of -gnatdA
|
* repinfo.adb (List_Rep_Info): Remove special handling of -gnatdA
|
flag. No longer needed now that we handle this in gnat1drv.adb.
|
flag. No longer needed now that we handle this in gnat1drv.adb.
|
|
|
* repinfo.ads: Minor reformatting
|
* repinfo.ads: Minor reformatting
|
|
|
2004-12-07 Richard Kenner
|
2004-12-07 Richard Kenner
|
Olivier Hainque
|
Olivier Hainque
|
Eric Botcazou
|
Eric Botcazou
|
|
|
* decl.c (maybe_pad_type): Use TYPE_SIZE_UNIT of the input type for
|
* decl.c (maybe_pad_type): Use TYPE_SIZE_UNIT of the input type for
|
TYPE_SIZE_UNIT of result type if SIZE is not specified.
|
TYPE_SIZE_UNIT of result type if SIZE is not specified.
|
(make_aligning_type): Pass -1 as ADDRESSABLE to prevent the creation
|
(make_aligning_type): Pass -1 as ADDRESSABLE to prevent the creation
|
of a bitfield, which we know is useless and causes trouble because of
|
of a bitfield, which we know is useless and causes trouble because of
|
alignment implications.
|
alignment implications.
|
|
|
* utils.c (create_var_decl): Set DECL_COMMON again on targets without
|
* utils.c (create_var_decl): Set DECL_COMMON again on targets without
|
BSS sections.
|
BSS sections.
|
(process_attributes): Clear DECL_COMMON again when a section attribute
|
(process_attributes): Clear DECL_COMMON again when a section attribute
|
is present.
|
is present.
|
(finish_record_type): Independently track if RECORD_TYPE has SIZE and/or
|
(finish_record_type): Independently track if RECORD_TYPE has SIZE and/or
|
SIZE_UNIT already set and use to compute final SIZE and SIZE_UNIT.
|
SIZE_UNIT already set and use to compute final SIZE and SIZE_UNIT.
|
(create_field_decl): Special case ADDRESSABLE negative to mean
|
(create_field_decl): Special case ADDRESSABLE negative to mean
|
"no bitfield creation", to be used by make_aligning_type. Don't
|
"no bitfield creation", to be used by make_aligning_type. Don't
|
restrict bitfield creation to !ADDRESSABLE any more, as some BLKmode
|
restrict bitfield creation to !ADDRESSABLE any more, as some BLKmode
|
fields claimed addressable still have to be bitfields. Use
|
fields claimed addressable still have to be bitfields. Use
|
value_factor_p instead of a raw binop construction to check for the
|
value_factor_p instead of a raw binop construction to check for the
|
position's alignment.
|
position's alignment.
|
|
|
2004-12-07 Geert Bosch
|
2004-12-07 Geert Bosch
|
|
|
* eval_fat.adb: Revert previous change.
|
* eval_fat.adb: Revert previous change.
|
|
|
2004-12-07 Thomas Quinot
|
2004-12-07 Thomas Quinot
|
Ed Schonberg
|
Ed Schonberg
|
|
|
* exp_ch4.adb (Expand_N_Indexed_Component): For an indexed component
|
* exp_ch4.adb (Expand_N_Indexed_Component): For an indexed component
|
with an implicit dereference as its prefix, use
|
with an implicit dereference as its prefix, use
|
Insert_Explicit_Dereference instead of merely rewriting the prefix into
|
Insert_Explicit_Dereference instead of merely rewriting the prefix into
|
an explicit dereference. This ensures that a reference to the original
|
an explicit dereference. This ensures that a reference to the original
|
prefix is generated, if appropriate.
|
prefix is generated, if appropriate.
|
|
|
* sem_util.adb (Insert_Explicit_Dereference): When an implicit
|
* sem_util.adb (Insert_Explicit_Dereference): When an implicit
|
dereference is rewritten to an explicit one, generate a reference to
|
dereference is rewritten to an explicit one, generate a reference to
|
the entity denoted by its prefix using the original prefix node, so
|
the entity denoted by its prefix using the original prefix node, so
|
the dereference can be properly recorded as a read of the denoted
|
the dereference can be properly recorded as a read of the denoted
|
access value, if appropriate.
|
access value, if appropriate.
|
|
|
* sem_warn.adb (Output_Unreferenced_Messages): Do not abstain from
|
* sem_warn.adb (Output_Unreferenced_Messages): Do not abstain from
|
emitting 'assigned but never read' warning on a variable on the basis
|
emitting 'assigned but never read' warning on a variable on the basis
|
that it has an access type.
|
that it has an access type.
|
(Check_References): Emit unreferenced warning when the scope is a
|
(Check_References): Emit unreferenced warning when the scope is a
|
subprogram body.
|
subprogram body.
|
|
|
2004-12-07 Robert Dewar
|
2004-12-07 Robert Dewar
|
Ed Schonberg
|
Ed Schonberg
|
|
|
* exp_ch6.adb (Expand_Call): Add comment on handling of back end
|
* exp_ch6.adb (Expand_Call): Add comment on handling of back end
|
intrinsic
|
intrinsic
|
|
|
* exp_intr.adb (Expand_Intrinsic_Call): Ignore unrecognized intrinsic,
|
* exp_intr.adb (Expand_Intrinsic_Call): Ignore unrecognized intrinsic,
|
leaving call unchanged.
|
leaving call unchanged.
|
This deals with the case where the pragma Import specified
|
This deals with the case where the pragma Import specified
|
an external name, to be handled by the back end.
|
an external name, to be handled by the back end.
|
|
|
* sem_prag.adb (Process_Import_Or_Interface): Do not check validity of
|
* sem_prag.adb (Process_Import_Or_Interface): Do not check validity of
|
subprogram which is Imported with convention Intrinsic if an
|
subprogram which is Imported with convention Intrinsic if an
|
External_Name argument is specified.
|
External_Name argument is specified.
|
(Process_Import_Or_Interface): Properly diagnose link name argument.
|
(Process_Import_Or_Interface): Properly diagnose link name argument.
|
(Inlining_Not_Possible): New name for Cannot_Inline, to avoid confusion
|
(Inlining_Not_Possible): New name for Cannot_Inline, to avoid confusion
|
with Sem_Ch6.Cannot_Inline.
|
with Sem_Ch6.Cannot_Inline.
|
(Process_Inline): Provide separate warning for inapplicable inline
|
(Process_Inline): Provide separate warning for inapplicable inline
|
pragma.
|
pragma.
|
(Cannot_Inline): Reject subprograms that have an at_end handler, so that
|
(Cannot_Inline): Reject subprograms that have an at_end handler, so that
|
treatment is uniform on different targets.
|
treatment is uniform on different targets.
|
|
|
2004-12-07 Ed Schonberg
|
2004-12-07 Ed Schonberg
|
|
|
* exp_ch7.adb (Expand_Cleanup_Actions): If statement sequence of
|
* exp_ch7.adb (Expand_Cleanup_Actions): If statement sequence of
|
construct is rewritten, preserve end label to permit source navigation.
|
construct is rewritten, preserve end label to permit source navigation.
|
|
|
2004-12-07 Thomas Quinot
|
2004-12-07 Thomas Quinot
|
|
|
* exp_dist.adb (Specific_Build_General_Calling_Stubs,
|
* exp_dist.adb (Specific_Build_General_Calling_Stubs,
|
Specific_Build_Stub_Target): New subprograms.
|
Specific_Build_Stub_Target): New subprograms.
|
(Build_Subprogram_Calling_Stubs): Make this procedure independent from
|
(Build_Subprogram_Calling_Stubs): Make this procedure independent from
|
the PCS implementation used, using the above PCS-customized subprograms.
|
the PCS implementation used, using the above PCS-customized subprograms.
|
Minor reformatting.
|
Minor reformatting.
|
(PolyORB_Support.Helpers): New subunit containing supporting subprograms
|
(PolyORB_Support.Helpers): New subunit containing supporting subprograms
|
for generation of DSA code targeted to the PolyORB PCS.
|
for generation of DSA code targeted to the PolyORB PCS.
|
(Add_Stub_Type): Rewrite to isolate the parts that are specific to one
|
(Add_Stub_Type): Rewrite to isolate the parts that are specific to one
|
implementation of the partition communication subsystem in ancillary
|
implementation of the partition communication subsystem in ancillary
|
subprograms.
|
subprograms.
|
(Specific_Build_Stub_Type, GARLIC_Support.Build_Stub_Type,
|
(Specific_Build_Stub_Type, GARLIC_Support.Build_Stub_Type,
|
PolyORB_Support.Build_Stub_Type): New subrograms containing the
|
PolyORB_Support.Build_Stub_Type): New subrograms containing the
|
PCS-specific part of Add_Stub_Type.
|
PCS-specific part of Add_Stub_Type.
|
(Insert_Partition_Check): Use runtime library function to perform
|
(Insert_Partition_Check): Use runtime library function to perform
|
E.4(19) check.
|
E.4(19) check.
|
|
|
* rtsfind.ads: New entity System.PolyORB_Interface.Make_Ref
|
* rtsfind.ads: New entity System.PolyORB_Interface.Make_Ref
|
(RE_Same_Partition): New entity, from s-parint.
|
(RE_Same_Partition): New entity, from s-parint.
|
|
|
* s-parint.ads, s-parint.adb (Same_Partition): New subprogram.
|
* s-parint.ads, s-parint.adb (Same_Partition): New subprogram.
|
|
|
2004-12-07 Gary Dismukes
|
2004-12-07 Gary Dismukes
|
|
|
* gnatmem.adb, gnatname.adb, gnatsym.adb, gprcmd.adb, vms_conv.adb:
|
* gnatmem.adb, gnatname.adb, gnatsym.adb, gprcmd.adb, vms_conv.adb:
|
Output the copyright message on a separate line from the version
|
Output the copyright message on a separate line from the version
|
message.
|
message.
|
|
|
2004-12-07 Joel Brobecker
|
2004-12-07 Joel Brobecker
|
|
|
* g-os_lib.adb (Spawn): Explicitly initialize Saved_Error to avoid a
|
* g-os_lib.adb (Spawn): Explicitly initialize Saved_Error to avoid a
|
compile-time warning.
|
compile-time warning.
|
|
|
2004-12-07 Robert Dewar
|
2004-12-07 Robert Dewar
|
|
|
* g-regpat.adb: (Match): Change a misuse of or to or else
|
* g-regpat.adb: (Match): Change a misuse of or to or else
|
|
|
2004-12-07 Ed Schonberg
|
2004-12-07 Ed Schonberg
|
|
|
* lib-xref.adb:
|
* lib-xref.adb:
|
(Generate_Reference): Handle properly a reference to an entry formal,
|
(Generate_Reference): Handle properly a reference to an entry formal,
|
when an accept statement has a pragma Unreferenced for it.
|
when an accept statement has a pragma Unreferenced for it.
|
|
|
* sem_ch9.adb (Analyze_Accept_Statement): Reset the Is_Referenced flag
|
* sem_ch9.adb (Analyze_Accept_Statement): Reset the Is_Referenced flag
|
and the Has_Pragma_Unreferenced flag for each formal before analyzing
|
and the Has_Pragma_Unreferenced flag for each formal before analyzing
|
the body, to ensure that warnings are properly emitted for each accept
|
the body, to ensure that warnings are properly emitted for each accept
|
statement of a given task entry.
|
statement of a given task entry.
|
|
|
2004-12-07 Vasiliy Fofanov
|
2004-12-07 Vasiliy Fofanov
|
|
|
* Makefile.in: Add support for foreign threads on VMS.
|
* Makefile.in: Add support for foreign threads on VMS.
|
|
|
2004-12-07 Richard Kenner
|
2004-12-07 Richard Kenner
|
|
|
* misc.c (gnat_types_compatible_p, LANG_HOOKS_TYPES_COMPATIBLE_P):
|
* misc.c (gnat_types_compatible_p, LANG_HOOKS_TYPES_COMPATIBLE_P):
|
Remove.
|
Remove.
|
(LANG_HOOKS_REDUCE_BIT_FIELD_OPERATIONS): New.
|
(LANG_HOOKS_REDUCE_BIT_FIELD_OPERATIONS): New.
|
|
|
* adaint.h: (__gnat_dup, __gnat_dup2): Add missing decls.
|
* adaint.h: (__gnat_dup, __gnat_dup2): Add missing decls.
|
|
|
* trans.c (Exception_Handler_to_gnu_sjlj): Also handle renamed
|
* trans.c (Exception_Handler_to_gnu_sjlj): Also handle renamed
|
exception.
|
exception.
|
(call_to_gnu): Convert to actual DECL_ARG_TYPE, not variant of it.
|
(call_to_gnu): Convert to actual DECL_ARG_TYPE, not variant of it.
|
|
|
2004-12-07 Robert Dewar
|
2004-12-07 Robert Dewar
|
|
|
* nlists.adb (Prepend_Debug): Remove parameters and nest within
|
* nlists.adb (Prepend_Debug): Remove parameters and nest within
|
Prepend.
|
Prepend.
|
(Remove_Next_Debug): Same fix
|
(Remove_Next_Debug): Same fix
|
|
|
* nlists.ads: Correct bad comments for Prev and Prev_Non_Pragma (we do
|
* nlists.ads: Correct bad comments for Prev and Prev_Non_Pragma (we do
|
maintain back pointers now, though we did not used to, and comments
|
maintain back pointers now, though we did not used to, and comments
|
were out of date).
|
were out of date).
|
(Prepend): Remove pragma Inline.
|
(Prepend): Remove pragma Inline.
|
(Remove_Next): Same cleanup
|
(Remove_Next): Same cleanup
|
|
|
2004-12-07 Thomas Quinot
|
2004-12-07 Thomas Quinot
|
|
|
* sem_ch4.adb (Process_Implicit_Dereference_Prefix): New subprogram
|
* sem_ch4.adb (Process_Implicit_Dereference_Prefix): New subprogram
|
used to record an implicit dereference as a read operation on its
|
used to record an implicit dereference as a read operation on its
|
prefix when operating under -gnatc. Necessary to avoid spurious
|
prefix when operating under -gnatc. Necessary to avoid spurious
|
'variable assigned but never read' warnings in that mode.
|
'variable assigned but never read' warnings in that mode.
|
(Process_Indexed_Component, Analyze_Selected_Component): When the prefix
|
(Process_Indexed_Component, Analyze_Selected_Component): When the prefix
|
is a non-overloaded implicit dereference, call the above subprogram to
|
is a non-overloaded implicit dereference, call the above subprogram to
|
ensure proper recording of references.
|
ensure proper recording of references.
|
|
|
2004-12-07 Gary Dismukes
|
2004-12-07 Gary Dismukes
|
|
|
* sem_ch5.adb (One_Bound): Remove call to Resolve, as the bound needs
|
* sem_ch5.adb (One_Bound): Remove call to Resolve, as the bound needs
|
to be resolved later as part of Analyze_Iteration_Scheme's call to
|
to be resolved later as part of Analyze_Iteration_Scheme's call to
|
Make_Index.
|
Make_Index.
|
|
|
2004-12-07 Ed Schonberg
|
2004-12-07 Ed Schonberg
|
|
|
* sem_ch8.adb (Find_Type): If node is a reference to 'Base and the
|
* sem_ch8.adb (Find_Type): If node is a reference to 'Base and the
|
prefix is not a scalar type, place error message on prefix, not on
|
prefix is not a scalar type, place error message on prefix, not on
|
type entity.
|
type entity.
|
|
|
2004-12-07 Bernard Banner
|
2004-12-07 Bernard Banner
|
|
|
* vxaddr2line.adb: Add support for x86 vxworks
|
* vxaddr2line.adb: Add support for x86 vxworks
|
|
|
2004-12-07 Thomas Quinot
|
2004-12-07 Thomas Quinot
|
|
|
* g-socket.ads (Get_Host_By_Address, Get_Host_By_Name): Clarify
|
* g-socket.ads (Get_Host_By_Address, Get_Host_By_Name): Clarify
|
documentation of the behaviour of these functions when passed an IP
|
documentation of the behaviour of these functions when passed an IP
|
address that has no record in the system hosts database and no reverse
|
address that has no record in the system hosts database and no reverse
|
record in the DNS.
|
record in the DNS.
|
|
|
* cstand.adb, a-tags.ads: Fix typos in comment.
|
* cstand.adb, a-tags.ads: Fix typos in comment.
|
|
|
2004-12-07 Robert Dewar
|
2004-12-07 Robert Dewar
|
|
|
* exp_ch2.adb, exp_ch3.adb, exp_ch5.adb, exp_ch8.adb,
|
* exp_ch2.adb, exp_ch3.adb, exp_ch5.adb, exp_ch8.adb,
|
exp_ch9.adb, exp_pakd.adb, interfac.ads, sem_ch6.adb,
|
exp_ch9.adb, exp_pakd.adb, interfac.ads, sem_ch6.adb,
|
sem_ch7.adb, sem_ch10.adb, sem_ch13.adb, sem_ch3.adb,
|
sem_ch7.adb, sem_ch10.adb, sem_ch13.adb, sem_ch3.adb,
|
s-poosiz.ads: Minor reformatting
|
s-poosiz.ads: Minor reformatting
|
|
|
* make.adb: Minor reformatting
|
* make.adb: Minor reformatting
|
Add some ??? comments asking for more comments
|
Add some ??? comments asking for more comments
|
|
|
* s-poosiz.adb: Minor reformatting
|
* s-poosiz.adb: Minor reformatting
|
Add comments on alignment requirement
|
Add comments on alignment requirement
|
|
|
* sinfo.ads: Remove obsolete comment and fix typo.
|
* sinfo.ads: Remove obsolete comment and fix typo.
|
|
|
2004-12-07 Vincent Celier
|
2004-12-07 Vincent Celier
|
Sergey Rybin
|
Sergey Rybin
|
|
|
* gnat_ugn.texi: Update the section "The GNAT Driver and Project
|
* gnat_ugn.texi: Update the section "The GNAT Driver and Project
|
Files" with the new tool and package names.
|
Files" with the new tool and package names.
|
Reformatting to suppress most of the warnings for line too long
|
Reformatting to suppress most of the warnings for line too long
|
Document the new section "Project Search Path:" in the output of
|
Document the new section "Project Search Path:" in the output of
|
gnatls -v.
|
gnatls -v.
|
Add gnatmetric section
|
Add gnatmetric section
|
|
|
2004-12-07 Vincent Celier
|
2004-12-07 Vincent Celier
|
|
|
* vms_data.ads: Correct GNAT METRIC qualifiers: -I-, -Idir and
|
* vms_data.ads: Correct GNAT METRIC qualifiers: -I-, -Idir and
|
-gnatec= are not direct switches of gnatmetric. Changed -eis to -eps
|
-gnatec= are not direct switches of gnatmetric. Changed -eis to -eps
|
and -eit to -ept. Added qualifier
|
and -eit to -ept. Added qualifier
|
/ELEMENT_METRICS=CONSTRUCT_NESTING_MAX for new switch -ec.
|
/ELEMENT_METRICS=CONSTRUCT_NESTING_MAX for new switch -ec.
|
|
|
2004-11-27 Andreas Schwab
|
2004-11-27 Andreas Schwab
|
|
|
* Make-lang.in (ada/trans.o): Depend on $(EXPR_H).
|
* Make-lang.in (ada/trans.o): Depend on $(EXPR_H).
|
|
|
2004-11-25 Arnaud Charlet
|
2004-11-25 Arnaud Charlet
|
|
|
* g-socthi-mingw.ads, g-socthi-vms.ads: Remove C_Read and C_Write from
|
* g-socthi-mingw.ads, g-socthi-vms.ads: Remove C_Read and C_Write from
|
internal implementation unit GNAT.Sockets.Thin,
|
internal implementation unit GNAT.Sockets.Thin,
|
as their usage for sockets is non-portable (using the read and write
|
as their usage for sockets is non-portable (using the read and write
|
functions from the system runtime library is fine on UNIX but won't
|
functions from the system runtime library is fine on UNIX but won't
|
work under Windows).
|
work under Windows).
|
|
|
* mingw32.h: Update copyright notice.
|
* mingw32.h: Update copyright notice.
|
|
|
2004-11-25 Arnaud Charlet
|
2004-11-25 Arnaud Charlet
|
|
|
* ada-tree.h: Minor reformatting of previous change to avoid lines
|
* ada-tree.h: Minor reformatting of previous change to avoid lines
|
longer than 79 characters.
|
longer than 79 characters.
|
|
|
2004-11-25 Olivier Hainque
|
2004-11-25 Olivier Hainque
|
|
|
* tb-gcc.c: GCC infrastructure based implementation of
|
* tb-gcc.c: GCC infrastructure based implementation of
|
__gnat_backtrace.
|
__gnat_backtrace.
|
|
|
2004-11-24 Steven Bosscher
|
2004-11-24 Steven Bosscher
|
|
|
* misc.c (gnat_post_options): Don't clear
|
* misc.c (gnat_post_options): Don't clear
|
flag_inline_functions.
|
flag_inline_functions.
|
|
|
2004-11-22 Andrew Pinski
|
2004-11-22 Andrew Pinski
|
|
|
PR ada/17986
|
PR ada/17986
|
* ada-tree.h (lang_tree_node): Set chain_next to be the chain of the
|
* ada-tree.h (lang_tree_node): Set chain_next to be the chain of the
|
tree.
|
tree.
|
|
|
2004-11-21 Andreas Jaeger
|
2004-11-21 Andreas Jaeger
|
|
|
* stylesw.adb: Change Style_Check_Subprogram_Order to
|
* stylesw.adb: Change Style_Check_Subprogram_Order to
|
Style_Check_Order_Subprograms.
|
Style_Check_Order_Subprograms.
|
|
|
2004-11-18 Arnaud Charlet
|
2004-11-18 Arnaud Charlet
|
|
|
* adaint.h, adaint.c
|
* adaint.h, adaint.c
|
(__gnat_portable_spawn): Fix cast of spawnvp third parameter
|
(__gnat_portable_spawn): Fix cast of spawnvp third parameter
|
to avoid warnings.
|
to avoid warnings.
|
Add also a cast to kill another warning.
|
Add also a cast to kill another warning.
|
(win32_no_block_spawn): Initialize CreateProcess's dwCreationFlags
|
(win32_no_block_spawn): Initialize CreateProcess's dwCreationFlags
|
parameter with the priority class of the parent process instead of
|
parameter with the priority class of the parent process instead of
|
always using the NORMAL_PRIORITY_CLASS.
|
always using the NORMAL_PRIORITY_CLASS.
|
(__gnat_dup): New function.
|
(__gnat_dup): New function.
|
(__gnat_dup2): New function.
|
(__gnat_dup2): New function.
|
(__gnat_is_symbolic_link): Enable the effective body of this
|
(__gnat_is_symbolic_link): Enable the effective body of this
|
function when __APPLE__ is defined.
|
function when __APPLE__ is defined.
|
|
|
* g-os_lib.ads, g-os_lib.adb (Spawn): Two new procedures.
|
* g-os_lib.ads, g-os_lib.adb (Spawn): Two new procedures.
|
Update comments.
|
Update comments.
|
|
|
2004-11-18 Olivier Hainque
|
2004-11-18 Olivier Hainque
|
|
|
* a-exexpr.adb (Others_Value, All_Others_Value): New variables, the
|
* a-exexpr.adb (Others_Value, All_Others_Value): New variables, the
|
address of which may be used to represent "others" and "all others"
|
address of which may be used to represent "others" and "all others"
|
choices in exception tables, instead of the current harcoded
|
choices in exception tables, instead of the current harcoded
|
(void *)0 and (void *)1.
|
(void *)0 and (void *)1.
|
(Setup_Exception): Do nothing in the GNAT SJLJ case.
|
(Setup_Exception): Do nothing in the GNAT SJLJ case.
|
|
|
* gigi.h (others_decl, all_others_decl): New decls representing the
|
* gigi.h (others_decl, all_others_decl): New decls representing the
|
new Others_Value and All_Others_Value objects.
|
new Others_Value and All_Others_Value objects.
|
(struct attrib): Rename "arg" component as "args", since GCC expects a
|
(struct attrib): Rename "arg" component as "args", since GCC expects a
|
list of arguments in there.
|
list of arguments in there.
|
|
|
* raise.c (GNAT_OTHERS, GNAT_ALL_OTHERS): Are now the address of the
|
* raise.c (GNAT_OTHERS, GNAT_ALL_OTHERS): Are now the address of the
|
corresponding objects exported by a-exexpr, instead of hardcoded dummy
|
corresponding objects exported by a-exexpr, instead of hardcoded dummy
|
addresses.
|
addresses.
|
|
|
* trans.c (Exception_Handler_to_gnu_zcx): Use the address of
|
* trans.c (Exception_Handler_to_gnu_zcx): Use the address of
|
others_decl and all_others_decl instead of hardcoded dummy addresses
|
others_decl and all_others_decl instead of hardcoded dummy addresses
|
to represent "others" and "all others" choices, which is cleaner and
|
to represent "others" and "all others" choices, which is cleaner and
|
more flexible with respect to the possible eh pointer encoding policies.
|
more flexible with respect to the possible eh pointer encoding policies.
|
|
|
* utils.c (init_gigi_decls): Initialize others_decl and all_others_decl.
|
* utils.c (init_gigi_decls): Initialize others_decl and all_others_decl.
|
(process_attributes): Account for the naming change of the "args"
|
(process_attributes): Account for the naming change of the "args"
|
attribute list entry component.
|
attribute list entry component.
|
|
|
* decl.c (build_attr_list): Rename into prepend_attributes to allow
|
* decl.c (build_attr_list): Rename into prepend_attributes to allow
|
cumulating attributes for different entities into a single list.
|
cumulating attributes for different entities into a single list.
|
(gnat_to_gnu_entity): Use prepend_attributes to build the list of
|
(gnat_to_gnu_entity): Use prepend_attributes to build the list of
|
attributes for the current entity and propagate first subtype
|
attributes for the current entity and propagate first subtype
|
attributes to other subtypes.
|
attributes to other subtypes.
|
: Attribute arguments are attr->args and not
|
: Attribute arguments are attr->args and not
|
attr->arg any more.
|
attr->arg any more.
|
(build_attr_list): Ditto. Make attr->args a TREE_LIST when there is an
|
(build_attr_list): Ditto. Make attr->args a TREE_LIST when there is an
|
argument provided, as this is what GCC expects. Use NULL_TREE instead
|
argument provided, as this is what GCC expects. Use NULL_TREE instead
|
of 0 for trees.
|
of 0 for trees.
|
|
|
2004-11-18 Robert Dewar
|
2004-11-18 Robert Dewar
|
|
|
* a-stmaco.ads, exp_util.ads, exp_util.adb, i-cpp.ads, i-cpp.adb:
|
* a-stmaco.ads, exp_util.ads, exp_util.adb, i-cpp.ads, i-cpp.adb:
|
Minor reformatting througout (including new function specs)
|
Minor reformatting througout (including new function specs)
|
Add ??? comments asking for clarification.
|
Add ??? comments asking for clarification.
|
|
|
2004-11-18 Thomas Quinot
|
2004-11-18 Thomas Quinot
|
|
|
* butil.ads, butil.adb, bindgen.adb (Get_Unit_Name_String): Remove
|
* butil.ads, butil.adb, bindgen.adb (Get_Unit_Name_String): Remove
|
incomplete duplicate implementation of this subprogram from butil.
|
incomplete duplicate implementation of this subprogram from butil.
|
|
|
2004-11-18 Thomas Quinot
|
2004-11-18 Thomas Quinot
|
|
|
* exp_dist.adb (Build_RPC_Receiver_Body): New subprogram. This
|
* exp_dist.adb (Build_RPC_Receiver_Body): New subprogram. This
|
procedures factors the common processing for building an RPC receiver
|
procedures factors the common processing for building an RPC receiver
|
for an RCI package or an RACW type.
|
for an RCI package or an RACW type.
|
Stylistic cleanup: change '/= Empty' to 'Present ()'; move body of
|
Stylistic cleanup: change '/= Empty' to 'Present ()'; move body of
|
Build_Remote_Subprogram_Proxy_Type into proper alphabetical order.
|
Build_Remote_Subprogram_Proxy_Type into proper alphabetical order.
|
(Get_PCS_Name): New subprogram. Returns the name of the PCS currently
|
(Get_PCS_Name): New subprogram. Returns the name of the PCS currently
|
in use.
|
in use.
|
(Specific_Add_RACW_Features): New subprogram. PCS-specific part of
|
(Specific_Add_RACW_Features): New subprogram. PCS-specific part of
|
Add_RACW_Features.
|
Add_RACW_Features.
|
(Specific_Add_RAST_Features): New subprogram. PCS-specific part of
|
(Specific_Add_RAST_Features): New subprogram. PCS-specific part of
|
Add_RAST_Features.
|
Add_RAST_Features.
|
(Assign_Subprogram_Identifier): New subprogram. Provision for assigning
|
(Assign_Subprogram_Identifier): New subprogram. Provision for assigning
|
distribution subprogram identifiers that are either subprogram numbers
|
distribution subprogram identifiers that are either subprogram numbers
|
or strings.
|
or strings.
|
(Get_Subprogram_Ids): New subprogram. Retrieve both the numeric and
|
(Get_Subprogram_Ids): New subprogram. Retrieve both the numeric and
|
string distribution identifiers assigned to a given subprogram.
|
string distribution identifiers assigned to a given subprogram.
|
(Get_Subprogram_Id): Reimplement in terms of Get_Subprogram_Ids.
|
(Get_Subprogram_Id): Reimplement in terms of Get_Subprogram_Ids.
|
(Add_RAS_Dereference_TSS): Add comments.
|
(Add_RAS_Dereference_TSS): Add comments.
|
(Build_General_Calling_Stubs): Note that the RACW_Type formal parameter
|
(Build_General_Calling_Stubs): Note that the RACW_Type formal parameter
|
is not referenced yet because it will be used by the PolyORB DSA
|
is not referenced yet because it will be used by the PolyORB DSA
|
implementation.
|
implementation.
|
(Insert_Partition_Check): Remove fossile code.
|
(Insert_Partition_Check): Remove fossile code.
|
(First_RCI_Subprogram_Id): Document this constant.
|
(First_RCI_Subprogram_Id): Document this constant.
|
(Add_RAS_Access_TSS): Correct the setting of the Etype of the
|
(Add_RAS_Access_TSS): Correct the setting of the Etype of the
|
RAS_Access TSS.
|
RAS_Access TSS.
|
(Get_Pkg_Name_String): Remove subprogram. Usage occurrences are
|
(Get_Pkg_Name_String): Remove subprogram. Usage occurrences are
|
replaced with calls to Get_Library_Unit_Name_String. Previously there
|
replaced with calls to Get_Library_Unit_Name_String. Previously there
|
were several instances of the same code in different locations in the
|
were several instances of the same code in different locations in the
|
compiler; this checkin completes the replacement of all of these
|
compiler; this checkin completes the replacement of all of these
|
instances with calls to a common subprogram.
|
instances with calls to a common subprogram.
|
Minor reformatting.
|
Minor reformatting.
|
|
|
* sem_dist.adb: Remove comment noting that RPC receiver generation
|
* sem_dist.adb: Remove comment noting that RPC receiver generation
|
should be disabled for RACWs that implement RASs.
|
should be disabled for RACWs that implement RASs.
|
(Process_Partition_Id): Use new subprogram Get_Library_Unit_Name_String.
|
(Process_Partition_Id): Use new subprogram Get_Library_Unit_Name_String.
|
|
|
* sem_util.ads, sem_util.adb (Has_Stream): New function
|
* sem_util.ads, sem_util.adb (Has_Stream): New function
|
(Get_Library_Unit_Name_String): New subprogram to retrieve the fully
|
(Get_Library_Unit_Name_String): New subprogram to retrieve the fully
|
qualified name of a library unit into the name buffer.
|
qualified name of a library unit into the name buffer.
|
(Note_Possible_Modification): Generate a reference only
|
(Note_Possible_Modification): Generate a reference only
|
if the context comes from source.
|
if the context comes from source.
|
|
|
* snames.ads (PCS_Names): New subtype corresponding to names of
|
* snames.ads (PCS_Names): New subtype corresponding to names of
|
supported implementations of the Partition Communication Subsystem
|
supported implementations of the Partition Communication Subsystem
|
(PCS) (i.e. the runtime library support modules for the distributed
|
(PCS) (i.e. the runtime library support modules for the distributed
|
systems annex).
|
systems annex).
|
|
|
2004-11-18 Robert Dewar
|
2004-11-18 Robert Dewar
|
Ed Schonberg
|
Ed Schonberg
|
|
|
* einfo.ads, einfo.adb: Remove Is_Psected flag, no longer used
|
* einfo.ads, einfo.adb: Remove Is_Psected flag, no longer used
|
(Has_Rep_Pragma): New function
|
(Has_Rep_Pragma): New function
|
(Has_Attribute_Definition_Clause): New function
|
(Has_Attribute_Definition_Clause): New function
|
(Record_Rep_Pragma): Moved here from sem_ch13.adb
|
(Record_Rep_Pragma): Moved here from sem_ch13.adb
|
(Get_Rep_Pragma): Remove junk kludge for Stream_Convert pragma
|
(Get_Rep_Pragma): Remove junk kludge for Stream_Convert pragma
|
|
|
* sem_ch13.ads, sem_ch13.adb (Record_Rep_Pragma): Moved to einfo.adb
|
* sem_ch13.ads, sem_ch13.adb (Record_Rep_Pragma): Moved to einfo.adb
|
|
|
* exp_prag.adb: (Expand_Pragma_Common_Object): New procedure
|
* exp_prag.adb: (Expand_Pragma_Common_Object): New procedure
|
(Expand_Pragma_Psect_Object): New procedure
|
(Expand_Pragma_Psect_Object): New procedure
|
These procedures contain the revised and cleaned up processing for
|
These procedures contain the revised and cleaned up processing for
|
these two pragmas. This processing was formerly in Sem_Prag, but
|
these two pragmas. This processing was formerly in Sem_Prag, but
|
is more appropriately moved here. The cleanup involves making sure
|
is more appropriately moved here. The cleanup involves making sure
|
that the pragmas are properly attached to the tree, and that no
|
that the pragmas are properly attached to the tree, and that no
|
nodes are improperly shared.
|
nodes are improperly shared.
|
|
|
* sem_prag.adb: Move expansion of Common_Object and Psect_Object
|
* sem_prag.adb: Move expansion of Common_Object and Psect_Object
|
pragmas to Exp_Prag, which is more appropriate.
|
pragmas to Exp_Prag, which is more appropriate.
|
Attach these two pragmas to the Rep_Item chain Use Rep_Item chain to
|
Attach these two pragmas to the Rep_Item chain Use Rep_Item chain to
|
check for duplicates Remove use of Is_Psected flag, no longer needed.
|
check for duplicates Remove use of Is_Psected flag, no longer needed.
|
Use new Make_String_Literal function with string.
|
Use new Make_String_Literal function with string.
|
|
|
* exp_attr.adb (Expand_Fpt_Attribute): The floating-point attributes
|
* exp_attr.adb (Expand_Fpt_Attribute): The floating-point attributes
|
that are functions return universal values, that have to be converted
|
that are functions return universal values, that have to be converted
|
to the context type.
|
to the context type.
|
Use new Make_String_Literal function with string.
|
Use new Make_String_Literal function with string.
|
(Get_Stream_Convert_Pragma): New function, replaces the use of
|
(Get_Stream_Convert_Pragma): New function, replaces the use of
|
Get_Rep_Pragma, which had to be kludged to work in this case.
|
Get_Rep_Pragma, which had to be kludged to work in this case.
|
|
|
* freeze.adb: Use new Has_Rep_Pragma function
|
* freeze.adb: Use new Has_Rep_Pragma function
|
|
|
* exp_intr.adb, exp_ch3.adb, sem_attr.adb: Use new Make_String_Literal
|
* exp_intr.adb, exp_ch3.adb, sem_attr.adb: Use new Make_String_Literal
|
function with string.
|
function with string.
|
Use new Has_Rep_Pragma function.
|
Use new Has_Rep_Pragma function.
|
|
|
* tbuild.ads, tbuild.adb (Make_String_Literal): New function, takes
|
* tbuild.ads, tbuild.adb (Make_String_Literal): New function, takes
|
string argument.
|
string argument.
|
|
|
2004-11-18 Robert Dewar
|
2004-11-18 Robert Dewar
|
|
|
* errout.ads, errout.adb: (First_Sloc): New function
|
* errout.ads, errout.adb: (First_Sloc): New function
|
|
|
* par-ch5.adb (P_Condition): Check for redundant parens is now a style
|
* par-ch5.adb (P_Condition): Check for redundant parens is now a style
|
check (-gnatyx) instead of being included as a redundant construct
|
check (-gnatyx) instead of being included as a redundant construct
|
warning.
|
warning.
|
|
|
* sem_ch6.adb: Change name Style_Check_Subprogram_Order to
|
* sem_ch6.adb: Change name Style_Check_Subprogram_Order to
|
Style_Check_Order_Subprograms.
|
Style_Check_Order_Subprograms.
|
|
|
* style.ads, styleg.ads, styleg.adb, styleg-c.adb, stylesw.ads,
|
* style.ads, styleg.ads, styleg.adb, styleg-c.adb, stylesw.ads,
|
stylesw.adb: Add Style_Check_Xtra_Parens
|
stylesw.adb: Add Style_Check_Xtra_Parens
|
|
|
* usage.adb: Add line for -gnatyx (check extra parens)
|
* usage.adb: Add line for -gnatyx (check extra parens)
|
|
|
* vms_data.ads: Add entry for STYLE_CHECKS=XTRA_PARENS => -gnatyx
|
* vms_data.ads: Add entry for STYLE_CHECKS=XTRA_PARENS => -gnatyx
|
|
|
2004-11-18 Ed Schonberg
|
2004-11-18 Ed Schonberg
|
Robert Dewar
|
Robert Dewar
|
|
|
* exp_ch4.adb (Expand_N_Selected_Component): If the component is the
|
* exp_ch4.adb (Expand_N_Selected_Component): If the component is the
|
discriminant of a constrained subtype, analyze the copy of the
|
discriminant of a constrained subtype, analyze the copy of the
|
corresponding constraint, because in some cases it may be only
|
corresponding constraint, because in some cases it may be only
|
partially analyzed.
|
partially analyzed.
|
Removes long-lived ??? comments.
|
Removes long-lived ??? comments.
|
|
|
* exp_ch7.adb (Establish_Transient_Scope): Remove complex code that
|
* exp_ch7.adb (Establish_Transient_Scope): Remove complex code that
|
handled controlled or secondary-stack expressions within the
|
handled controlled or secondary-stack expressions within the
|
iteration_scheme of a loop.
|
iteration_scheme of a loop.
|
|
|
* sem_ch5.adb (Analyze_Iteration_Scheme): Build a block to evaluate
|
* sem_ch5.adb (Analyze_Iteration_Scheme): Build a block to evaluate
|
bounds that may contain functions calls, to prevent memory leaks when
|
bounds that may contain functions calls, to prevent memory leaks when
|
the bound contains a call to a function that uses the secondary stack.
|
the bound contains a call to a function that uses the secondary stack.
|
(Check_Complex_Bounds): Subsidiary of Analyze_Iteration_Scheme, to
|
(Check_Complex_Bounds): Subsidiary of Analyze_Iteration_Scheme, to
|
generate temporaries for loop bounds that might contain function calls
|
generate temporaries for loop bounds that might contain function calls
|
that require secondary stack and/or finalization actions.
|
that require secondary stack and/or finalization actions.
|
|
|
* sem_ch4.adb (Analyze_Indexed_Component_Form): If the prefix is a
|
* sem_ch4.adb (Analyze_Indexed_Component_Form): If the prefix is a
|
selected component and the selector is overloadable (not just a
|
selected component and the selector is overloadable (not just a
|
function) treat as function call, Analyze_Call will disambiguate if
|
function) treat as function call, Analyze_Call will disambiguate if
|
necessary.
|
necessary.
|
(Analyze_Selected_Component): Do not generate an actual subtype for the
|
(Analyze_Selected_Component): Do not generate an actual subtype for the
|
selected component if expansion is disabled. The actual subtype is only
|
selected component if expansion is disabled. The actual subtype is only
|
needed for constraint checks.
|
needed for constraint checks.
|
(Analyze_Allocator): If restriction No_Streams is set, then do
|
(Analyze_Allocator): If restriction No_Streams is set, then do
|
not permit objects to be declared of a stream type, or of a
|
not permit objects to be declared of a stream type, or of a
|
composite type containing a stream.
|
composite type containing a stream.
|
|
|
* restrict.ads: Remove the a-stream entry from Unit_Array, since
|
* restrict.ads: Remove the a-stream entry from Unit_Array, since
|
No_Streams no longer prohibits with'ing this package.
|
No_Streams no longer prohibits with'ing this package.
|
|
|
* sem_ch3.adb (Build_Derived_Record_Type): If the parent type has
|
* sem_ch3.adb (Build_Derived_Record_Type): If the parent type has
|
discriminants, but the parent base has unknown discriminants, there is
|
discriminants, but the parent base has unknown discriminants, there is
|
no discriminant constraint to inherit. Such a discrepancy can arise
|
no discriminant constraint to inherit. Such a discrepancy can arise
|
when the actual for a formal type with unknown discriminants is a
|
when the actual for a formal type with unknown discriminants is a
|
similar private type whose full view has discriminants.
|
similar private type whose full view has discriminants.
|
(Analyze_Object_Declaration): If restriction No_Streams is set, then
|
(Analyze_Object_Declaration): If restriction No_Streams is set, then
|
do not permit objects to be declared of a stream type, or of a
|
do not permit objects to be declared of a stream type, or of a
|
composite type containing a stream.
|
composite type containing a stream.
|
|
|
2004-11-18 Ed Schonberg
|
2004-11-18 Ed Schonberg
|
|
|
* exp_dbug.ads: Update documentation to reflect simpler encoding for
|
* exp_dbug.ads: Update documentation to reflect simpler encoding for
|
protected operations.
|
protected operations.
|
|
|
* exp_ch9.adb (Build_Selected_Name): Do not include "PT" suffix in
|
* exp_ch9.adb (Build_Selected_Name): Do not include "PT" suffix in
|
generated name, it complicates decoding in gdb and hinders debugging
|
generated name, it complicates decoding in gdb and hinders debugging
|
of protected operations.
|
of protected operations.
|
(Build_Barrier_Function_Specification): Set the Needs_Debug_Info
|
(Build_Barrier_Function_Specification): Set the Needs_Debug_Info
|
flag for the protected entry barrier function.
|
flag for the protected entry barrier function.
|
(Build_Protected_Entry_Specification): Set the Needs_Debug_Info
|
(Build_Protected_Entry_Specification): Set the Needs_Debug_Info
|
flag for the protected entry function.
|
flag for the protected entry function.
|
|
|
2004-11-18 Nicolas Setton
|
2004-11-18 Nicolas Setton
|
|
|
* expect.c: Define __unix__ when __APPLE__ is defined.
|
* expect.c: Define __unix__ when __APPLE__ is defined.
|
|
|
* Makefile.in: Inform the value of the variable GMEM_LIB in the
|
* Makefile.in: Inform the value of the variable GMEM_LIB in the
|
Darwin-specific section.
|
Darwin-specific section.
|
|
|
* lang-specs.h: Change the placement of the %1 marker.
|
* lang-specs.h: Change the placement of the %1 marker.
|
Works around the fact that gcc adds -fPIC by default under Darwin.
|
Works around the fact that gcc adds -fPIC by default under Darwin.
|
|
|
2004-11-18 Ed Schonberg
|
2004-11-18 Ed Schonberg
|
|
|
* exp_pakd.adb (Convert_To_PAT_Type): After replacing the original
|
* exp_pakd.adb (Convert_To_PAT_Type): After replacing the original
|
type of the object with the packed array type, set the Analyzed flag
|
type of the object with the packed array type, set the Analyzed flag
|
on the object if it is an entity or simple indexed component, to avoid
|
on the object if it is an entity or simple indexed component, to avoid
|
spurious type errors.
|
spurious type errors.
|
|
|
2004-11-18 Gary Dismukes
|
2004-11-18 Gary Dismukes
|
|
|
* gnat1drv.adb, gnatbind.adb, gnatchop.adb, gnatfind.adb, gnatlink.adb,
|
* gnat1drv.adb, gnatbind.adb, gnatchop.adb, gnatfind.adb, gnatlink.adb,
|
gnatls.adb, gnatxref.adb, gprep.adb: Output the copyright message on a
|
gnatls.adb, gnatxref.adb, gprep.adb: Output the copyright message on a
|
separate line from the version message.
|
separate line from the version message.
|
|
|
2004-11-18 Ed Falis
|
2004-11-18 Ed Falis
|
|
|
* init.c (__gnat_map_signal): map SIGSEGV to Storage_Error for AE653
|
* init.c (__gnat_map_signal): map SIGSEGV to Storage_Error for AE653
|
vthreads.
|
vthreads.
|
(init_float): Eliminate initialization of floating point status for
|
(init_float): Eliminate initialization of floating point status for
|
AE653. The instructions have no effect for vThreads.
|
AE653. The instructions have no effect for vThreads.
|
|
|
2004-11-18 Vincent Celier
|
2004-11-18 Vincent Celier
|
|
|
* make.adb (Gnatmake): Invoke gnatlink with -shared-libgcc when
|
* make.adb (Gnatmake): Invoke gnatlink with -shared-libgcc when
|
gnatbind is invoked with -shared.
|
gnatbind is invoked with -shared.
|
|
|
2004-11-18 Jose Ruiz
|
2004-11-18 Jose Ruiz
|
|
|
* s-tposen.adb (Lock_Entry): Remove the code for raising Program_Error
|
* s-tposen.adb (Lock_Entry): Remove the code for raising Program_Error
|
for Detect_Blocking which is redundant with the check done within the
|
for Detect_Blocking which is redundant with the check done within the
|
procedure Protected_Single_Entry_Call.
|
procedure Protected_Single_Entry_Call.
|
(Lock_Read_Only_Entry): Remove the code for raising Program_Error for
|
(Lock_Read_Only_Entry): Remove the code for raising Program_Error for
|
Detect_Blocking which is redundant with the check done within the
|
Detect_Blocking which is redundant with the check done within the
|
procedure Protected_Single_Entry_Call.
|
procedure Protected_Single_Entry_Call.
|
|
|
2004-11-18 Vincent Celier
|
2004-11-18 Vincent Celier
|
|
|
* makegpr.adb (Compile): Put the compiling switches (in package
|
* makegpr.adb (Compile): Put the compiling switches (in package
|
Compiler and on the command line) immediately after "-c", instead of
|
Compiler and on the command line) immediately after "-c", instead of
|
at the end of the command line invocation of the compiler, when
|
at the end of the command line invocation of the compiler, when
|
compiling a non-Ada file.
|
compiling a non-Ada file.
|
(Build_Global_Archive): When there is no need to rebuild the archive,
|
(Build_Global_Archive): When there is no need to rebuild the archive,
|
set Global_Archive_Exists, so that the archive is passed to the linker
|
set Global_Archive_Exists, so that the archive is passed to the linker
|
if one is needed.
|
if one is needed.
|
|
|
2004-11-18 Robert Dewar
|
2004-11-18 Robert Dewar
|
Sergey Rybin
|
Sergey Rybin
|
|
|
* gnat_ugn.texi:
|
* gnat_ugn.texi:
|
Remove extra paren check from list of checks for redundant constructs
|
Remove extra paren check from list of checks for redundant constructs
|
Add documentation of new -gnatyx style check (check extra parens)
|
Add documentation of new -gnatyx style check (check extra parens)
|
Remove paragraph about gnatelim debug options.
|
Remove paragraph about gnatelim debug options.
|
|
|
* gnat_rm.texi: Document that Ada.Streams now forbids creating stream
|
* gnat_rm.texi: Document that Ada.Streams now forbids creating stream
|
objects rather than forbidding dependencies on the package Ada.Streams.
|
objects rather than forbidding dependencies on the package Ada.Streams.
|
|
|
* sinfo.ads: Add ??? note that we should document pragmas passed to
|
* sinfo.ads: Add ??? note that we should document pragmas passed to
|
back end.
|
back end.
|
|
|
* g-expect.ads: Fix a few typos in the comments.
|
* g-expect.ads: Fix a few typos in the comments.
|
|
|
2004-11-09 Joseph S. Myers
|
2004-11-09 Joseph S. Myers
|
|
|
* misc.c (gnat_handle_option): Use %< and %> for quoting in
|
* misc.c (gnat_handle_option): Use %< and %> for quoting in
|
warning message.
|
warning message.
|
|
|
2004-11-08 Rainer Orth
|
2004-11-08 Rainer Orth
|
|
|
* a-numaux-x86.adb (Tan): Fix fdivp syntax.
|
* a-numaux-x86.adb (Tan): Fix fdivp syntax.
|
|
|
2004-11-07 Andreas Schwab
|
2004-11-07 Andreas Schwab
|
|
|
* Makefile.in (install-gnatlib): Remove spurious hyphen.
|
* Makefile.in (install-gnatlib): Remove spurious hyphen.
|
|
|
2004-11-02 Andrew Pinski
|
2004-11-02 Andrew Pinski
|
|
|
PR ada/18228
|
PR ada/18228
|
* Makefile.in (darwin): Set soext to .dylib.
|
* Makefile.in (darwin): Set soext to .dylib.
|
|
|
2004-10-26 Vincent Celier
|
2004-10-26 Vincent Celier
|
Thomas Quinot
|
Thomas Quinot
|
|
|
* g-socthi-vms.adb, g-socthi-mingw.adb, g-socthi-vxworks.ads:
|
* g-socthi-vms.adb, g-socthi-mingw.adb, g-socthi-vxworks.ads:
|
(C_Writev): Change MSG_Forced_Flags to Constants.MSG_Forced_Flags as
|
(C_Writev): Change MSG_Forced_Flags to Constants.MSG_Forced_Flags as
|
there is no use of GNAT.Sockets.Constants.
|
there is no use of GNAT.Sockets.Constants.
|
Remove remaining pragma Import for C_Write
|
Remove remaining pragma Import for C_Write
|
Remove C_Read and C_Write from internal implementation unit
|
Remove C_Read and C_Write from internal implementation unit
|
GNAT.Sockets.Thin, as their usage for sockets is non-portable (using
|
GNAT.Sockets.Thin, as their usage for sockets is non-portable (using
|
the read and write functions from the system runtime library is fine
|
the read and write functions from the system runtime library is fine
|
on UNIX but won't work under Windows).
|
on UNIX but won't work under Windows).
|
|
|
* g-socket.adb: (Abort_Selector): Use C_Send instead of C_Write.
|
* g-socket.adb: (Abort_Selector): Use C_Send instead of C_Write.
|
(Check_Selector): Use C_Recv instead of C_Read.
|
(Check_Selector): Use C_Recv instead of C_Read.
|
Selectors are the GNAT.Sockets abstraction to perform a select()
|
Selectors are the GNAT.Sockets abstraction to perform a select()
|
call on a set of descriptors. To allow abortion of an ongoing
|
call on a set of descriptors. To allow abortion of an ongoing
|
select operation, some data is written to a dedicated socket that
|
select operation, some data is written to a dedicated socket that
|
is always monitored.
|
is always monitored.
|
Under Windows, the write and read library functions cannot operate
|
Under Windows, the write and read library functions cannot operate
|
on sockets, so we need to use send and recv instead, which is portable
|
on sockets, so we need to use send and recv instead, which is portable
|
across all supported platforms.
|
across all supported platforms.
|
|
|
* g-socthi.ads: Remove C_Read and C_Write from internal implementation
|
* g-socthi.ads: Remove C_Read and C_Write from internal implementation
|
unit GNAT.Sockets.Thin, as their usage for sockets is non-portable
|
unit GNAT.Sockets.Thin, as their usage for sockets is non-portable
|
(using the read and write functions from the system runtime library is
|
(using the read and write functions from the system runtime library is
|
fine on UNIX but won't work under Windows).
|
fine on UNIX but won't work under Windows).
|
|
|
2004-10-26 Nicolas Setton
|
2004-10-26 Nicolas Setton
|
|
|
* mlib-tgt-darwin.adb: New file.
|
* mlib-tgt-darwin.adb: New file.
|
|
|
* mlib-tgt-tru64.adb, mlib-tgt-aix.adb, mlib-tgt-irix.adb,
|
* mlib-tgt-tru64.adb, mlib-tgt-aix.adb, mlib-tgt-irix.adb,
|
mlib-tgt-hpux.adb, mlib-tgt-linux.adb, mlib-tgt-solaris.adb,
|
mlib-tgt-hpux.adb, mlib-tgt-linux.adb, mlib-tgt-solaris.adb,
|
mlib-tgt-vms-alpha.adb, mlib-tgt-vms-ia64.adb,
|
mlib-tgt-vms-alpha.adb, mlib-tgt-vms-ia64.adb,
|
mlib-tgt-mingw.adb, mlib-tgt-vxworks.adb (Archive_Indexer_Options): New
|
mlib-tgt-mingw.adb, mlib-tgt-vxworks.adb (Archive_Indexer_Options): New
|
subprogram body.
|
subprogram body.
|
|
|
* Makefile.in: Add support for building shared libraries under Darwin.
|
* Makefile.in: Add support for building shared libraries under Darwin.
|
(EXTRA_GNATRTL_NONTASKING_OBJS, ppc-vxworks): Add s-vxwexc.o, containing
|
(EXTRA_GNATRTL_NONTASKING_OBJS, ppc-vxworks): Add s-vxwexc.o, containing
|
the low level EH init subprogram to be called from __gnat_initialize.
|
the low level EH init subprogram to be called from __gnat_initialize.
|
|
|
* mlib-tgt.ads, mlib-tgt.adb (Archive_Indexer_Options): New subprogram,
|
* mlib-tgt.ads, mlib-tgt.adb (Archive_Indexer_Options): New subprogram,
|
indicates which options to pass to the archive indexer.
|
indicates which options to pass to the archive indexer.
|
|
|
* mlib-utl.adb: Add support for calling ranlib with additional
|
* mlib-utl.adb: Add support for calling ranlib with additional
|
options. This is needed for instance under Mac OS X.
|
options. This is needed for instance under Mac OS X.
|
(Ranlib_Options): New global variable, used to store the potential
|
(Ranlib_Options): New global variable, used to store the potential
|
options to pass to ranlib.
|
options to pass to ranlib.
|
(Ar): Use Ranlib_Options when spawning ranlib.
|
(Ar): Use Ranlib_Options when spawning ranlib.
|
(Initialize): Set the value of ranlib option.
|
(Initialize): Set the value of ranlib option.
|
|
|
2004-10-26 Olivier Hainque
|
2004-10-26 Olivier Hainque
|
|
|
* s-parame-linux.adb (Minimum_Stack_Size): Adjust to return 12K
|
* s-parame-linux.adb (Minimum_Stack_Size): Adjust to return 12K
|
instead of 8K, to reflect the real potential needs for stack-checking
|
instead of 8K, to reflect the real potential needs for stack-checking
|
in the ZCX case.
|
in the ZCX case.
|
|
|
2004-10-26 Pascal Obry
|
2004-10-26 Pascal Obry
|
|
|
* s-parame-mingw.adb (Default_Stack_Size): Add some comments.
|
* s-parame-mingw.adb (Default_Stack_Size): Add some comments.
|
|
|
* s-taprop-mingw.adb (Create_Task): Set initial stack size to 1024. On
|
* s-taprop-mingw.adb (Create_Task): Set initial stack size to 1024. On
|
Windows only the initial thread stack size can be set so it is good to
|
Windows only the initial thread stack size can be set so it is good to
|
start we a low stack size.
|
start we a low stack size.
|
The OS will adjust the size as needed.
|
The OS will adjust the size as needed.
|
|
|
2004-10-26 Olivier Hainque
|
2004-10-26 Olivier Hainque
|
Nicolas Setton
|
Nicolas Setton
|
|
|
* expect.c, adaint.c, link.c, sysdep.c (unix sections): Guard with
|
* expect.c, adaint.c, link.c, sysdep.c (unix sections): Guard with
|
"__unix__" instead of "unix".
|
"__unix__" instead of "unix".
|
The latter is implicitly defined by gcc3.2 but not by gcc >= 3.4, so the
|
The latter is implicitly defined by gcc3.2 but not by gcc >= 3.4, so the
|
sections were just mistakenly ignored. The former is
|
sections were just mistakenly ignored. The former is
|
implicitely defined by gcc2.8, gcc3.2 and gcc3.4.
|
implicitely defined by gcc2.8, gcc3.2 and gcc3.4.
|
Update #ifdef preprocessor macro to detect the symbol __hpux__ instead
|
Update #ifdef preprocessor macro to detect the symbol __hpux__ instead
|
of hpux. This prevents an unwanted definition of the symbol
|
of hpux. This prevents an unwanted definition of the symbol
|
convert_addresses in adaint.o.
|
convert_addresses in adaint.o.
|
|
|
2004-10-26 Gary Dismukes
|
2004-10-26 Gary Dismukes
|
|
|
* a-exexpr.adb (Setup_Key): Change initial value to 16#DEAD#, for
|
* a-exexpr.adb (Setup_Key): Change initial value to 16#DEAD#, for
|
compatibility with type Unwind_Word on 16-bit targets such as AAMP.
|
compatibility with type Unwind_Word on 16-bit targets such as AAMP.
|
|
|
2004-10-26 Cyrille Comar
|
2004-10-26 Cyrille Comar
|
|
|
* a-filico.ads, a-filico.adb: fix incorrect header.
|
* a-filico.ads, a-filico.adb: fix incorrect header.
|
|
|
2004-10-26 Javier Miranda
|
2004-10-26 Javier Miranda
|
|
|
* a-ststio.ads: Fix typo in identifier
|
* a-ststio.ads: Fix typo in identifier
|
|
|
2004-10-26 Thomas Quinot
|
2004-10-26 Thomas Quinot
|
|
|
* sem_ch4.adb: Minor reformatting.
|
* sem_ch4.adb: Minor reformatting.
|
|
|
2004-10-26 Ed Schonberg
|
2004-10-26 Ed Schonberg
|
|
|
* checks.adb (Expr_Known_Valid): If floating-point validity checks are
|
* checks.adb (Expr_Known_Valid): If floating-point validity checks are
|
enabled, check the result of unary and binary operations when the
|
enabled, check the result of unary and binary operations when the
|
expression is the right-hand side of an assignment.
|
expression is the right-hand side of an assignment.
|
|
|
2004-10-26 Vincent Celier
|
2004-10-26 Vincent Celier
|
|
|
* clean.adb (Delete): Do not output warnings when in quiet output and
|
* clean.adb (Delete): Do not output warnings when in quiet output and
|
not in verbose mode.
|
not in verbose mode.
|
(Force_Deletions): New Boolean flag, defaulted to False
|
(Force_Deletions): New Boolean flag, defaulted to False
|
(Delete): Only delete a file if it is writable, and when
|
(Delete): Only delete a file if it is writable, and when
|
Force_Deletions is True.
|
Force_Deletions is True.
|
(Parse_Cmd_Line): New switch -f: set Force_Deletions to True
|
(Parse_Cmd_Line): New switch -f: set Force_Deletions to True
|
(Usage): Line for new switch -f
|
(Usage): Line for new switch -f
|
(Clean_Directory): Use GNAT.OS_Lib.Set_Writable instead of rolling our
|
(Clean_Directory): Use GNAT.OS_Lib.Set_Writable instead of rolling our
|
own.
|
own.
|
|
|
2004-10-26 Eric Botcazou
|
2004-10-26 Eric Botcazou
|
|
|
* decl.c (gnat_to_gnu_field): Use the type of the inner object for a
|
* decl.c (gnat_to_gnu_field): Use the type of the inner object for a
|
JM type only if its size matches that of the wrapper. When a size is
|
JM type only if its size matches that of the wrapper. When a size is
|
prescribed and the field is not aliased, remove the wrapper of a JM
|
prescribed and the field is not aliased, remove the wrapper of a JM
|
type only if the size is not greater than that of the packed array.
|
type only if the size is not greater than that of the packed array.
|
(gnat_to_gnu_entity): Change the extension of packed array wrappers
|
(gnat_to_gnu_entity): Change the extension of packed array wrappers
|
from LJM to JM.
|
from LJM to JM.
|
|
|
2004-10-26 Geert Bosch
|
2004-10-26 Geert Bosch
|
|
|
* eval_fat.adb (Eps_Model,Eps_Denorm): Remove, no longer used.
|
* eval_fat.adb (Eps_Model,Eps_Denorm): Remove, no longer used.
|
(Succ): Re-implement using Scaling, Exponent and Ceiling attributes.
|
(Succ): Re-implement using Scaling, Exponent and Ceiling attributes.
|
(Pred): Implement in terms of Succ.
|
(Pred): Implement in terms of Succ.
|
|
|
2004-10-26 Ed Schonberg
|
2004-10-26 Ed Schonberg
|
|
|
* exp_aggr.adb (Safe_Component): An aggregate component that is an
|
* exp_aggr.adb (Safe_Component): An aggregate component that is an
|
unchecked conversion is safe for in-place use if the expression of the
|
unchecked conversion is safe for in-place use if the expression of the
|
conversion is safe.
|
conversion is safe.
|
(Expand_Array_Aggregate): An aggregate that initializes an allocator may
|
(Expand_Array_Aggregate): An aggregate that initializes an allocator may
|
be expandable in place even if the aggregate does not come from source.
|
be expandable in place even if the aggregate does not come from source.
|
(Convert_Array_Aggr_In_Allocator): New procedure to initialize the
|
(Convert_Array_Aggr_In_Allocator): New procedure to initialize the
|
designated object of an allocator in place, rather than building it
|
designated object of an allocator in place, rather than building it
|
first on the stack. The previous scheme forces a full copy of the array,
|
first on the stack. The previous scheme forces a full copy of the array,
|
and may be altogether unsusable if the size of the array is too large
|
and may be altogether unsusable if the size of the array is too large
|
for stack allocation.
|
for stack allocation.
|
|
|
2004-10-26 Robert Dewar
|
2004-10-26 Robert Dewar
|
|
|
* exp_ch4.adb (Expand_N_Op_Eq): Make sure we expand a loop for array
|
* exp_ch4.adb (Expand_N_Op_Eq): Make sure we expand a loop for array
|
compares if the component is atomic.
|
compares if the component is atomic.
|
|
|
* exp_ch5.adb (Expand_Assign_Array): Make sure we expand a loop for
|
* exp_ch5.adb (Expand_Assign_Array): Make sure we expand a loop for
|
array assignment if the component type is atomic.
|
array assignment if the component type is atomic.
|
|
|
2004-10-26 Ed Schonberg
|
2004-10-26 Ed Schonberg
|
Eric Botcazou
|
Eric Botcazou
|
|
|
* exp_ch6.adb (Expand_Actuals): If the actual for an in-out parameter
|
* exp_ch6.adb (Expand_Actuals): If the actual for an in-out parameter
|
is aliased and is a by_reference type, do not pass by copy.
|
is aliased and is a by_reference type, do not pass by copy.
|
(Expand_N_Function_Call) : New function to
|
(Expand_N_Function_Call) : New function to
|
detect whether the call is in the right side of an assignment or
|
detect whether the call is in the right side of an assignment or
|
the expression of an object declaration. Recurse on component
|
the expression of an object declaration. Recurse on component
|
association within aggregates.
|
association within aggregates.
|
Call it in the condition that determines whether the temporary is
|
Call it in the condition that determines whether the temporary is
|
necessary for correct stack-checking.
|
necessary for correct stack-checking.
|
|
|
2004-10-26 Thomas Quinot
|
2004-10-26 Thomas Quinot
|
|
|
* exp_dist.adb (Build_General_Calling_Stubs): New formal parameter
|
* exp_dist.adb (Build_General_Calling_Stubs): New formal parameter
|
RACW_Type, used in the PolyORB version.
|
RACW_Type, used in the PolyORB version.
|
Rename RCI_Info to RCI_Locator, for consistency between the PolyORB
|
Rename RCI_Info to RCI_Locator, for consistency between the PolyORB
|
version and the GARLIC version.
|
version and the GARLIC version.
|
|
|
* snames.ads, snames.adb, s-parint.ads, s-parint.adb:
|
* snames.ads, snames.adb, s-parint.ads, s-parint.adb:
|
Rename RCI_Info to RCI_Locator for better consistency between the
|
Rename RCI_Info to RCI_Locator for better consistency between the
|
GARLIC and PolyORB versions of the distributed systems annex.
|
GARLIC and PolyORB versions of the distributed systems annex.
|
(DSA_Implementation_Name): This enumeration lists the possible
|
(DSA_Implementation_Name): This enumeration lists the possible
|
implementations of the Partition Communication Subsystem for the
|
implementations of the Partition Communication Subsystem for the
|
Distributed Systems Annex (DSA). The three available implementations
|
Distributed Systems Annex (DSA). The three available implementations
|
are the dummy stub implementation (No_DSA), and two versions based on
|
are the dummy stub implementation (No_DSA), and two versions based on
|
two different distribution runtime libraries: GARLIC and PolyORB. Both
|
two different distribution runtime libraries: GARLIC and PolyORB. Both
|
the GARLIC PCS and the PolyORB PCS are part of the GLADE distribution
|
the GARLIC PCS and the PolyORB PCS are part of the GLADE distribution
|
technology.
|
technology.
|
Change the literal GLADE_DSA to GARLIC_DSA to accurately describe
|
Change the literal GLADE_DSA to GARLIC_DSA to accurately describe
|
that organization.
|
that organization.
|
|
|
* rtsfind.ads: Rename RCI_Info to RCI_Locator for better consistency
|
* rtsfind.ads: Rename RCI_Info to RCI_Locator for better consistency
|
between the GARLIC and PolyORB versions of the distributed systems
|
between the GARLIC and PolyORB versions of the distributed systems
|
annex.
|
annex.
|
Remove RE_Unbounded_Reclaim_Pool since it is unused.
|
Remove RE_Unbounded_Reclaim_Pool since it is unused.
|
|
|
2004-10-26 Gary Dismukes
|
2004-10-26 Gary Dismukes
|
|
|
* gnat1drv.adb: Suppress calling the back end when
|
* gnat1drv.adb: Suppress calling the back end when
|
Frontend_Layout_On_Target is true.
|
Frontend_Layout_On_Target is true.
|
|
|
2004-10-26 Thomas Quinot
|
2004-10-26 Thomas Quinot
|
|
|
* g-os_lib.ads, g-os_lib.adb (Set_Executable, Set_Writable,
|
* g-os_lib.ads, g-os_lib.adb (Set_Executable, Set_Writable,
|
Set_Read_Only): New subprograms.
|
Set_Read_Only): New subprograms.
|
These new routines allow the user to set or unset the Owner execute
|
These new routines allow the user to set or unset the Owner execute
|
and Owner write permission flags on a file.
|
and Owner write permission flags on a file.
|
|
|
* makegpr.adb, mlib.adb, mlib-prj.adb: Use
|
* makegpr.adb, mlib.adb, mlib-prj.adb: Use
|
GNAT.OS_Lib.Set_Executable instead of rolling our own.
|
GNAT.OS_Lib.Set_Executable instead of rolling our own.
|
|
|
2004-10-26 Matthew Gingell
|
2004-10-26 Matthew Gingell
|
|
|
* i-cpp.ads, i-cpp.adb: Change layout of VTable for new C++ ABI.
|
* i-cpp.ads, i-cpp.adb: Change layout of VTable for new C++ ABI.
|
|
|
2004-10-26 Pascal Obry
|
2004-10-26 Pascal Obry
|
|
|
* init.c (__gnat_error_handler) [Win32]: Instead of trying to read the
|
* init.c (__gnat_error_handler) [Win32]: Instead of trying to read the
|
memory before the faulting page we properly test the process read
|
memory before the faulting page we properly test the process read
|
access for this address using appropriate Win32 routine.
|
access for this address using appropriate Win32 routine.
|
(HPUX sections): guard with "__hpux__" instead of "hpux".
|
(HPUX sections): guard with "__hpux__" instead of "hpux".
|
|
|
2004-10-26 Robert Dewar
|
2004-10-26 Robert Dewar
|
|
|
* lib-xref.adb (Generate_Reference): Don't complain about reference to
|
* lib-xref.adb (Generate_Reference): Don't complain about reference to
|
entry parameter if pragma Unreferenced set, since we do not properly
|
entry parameter if pragma Unreferenced set, since we do not properly
|
handle the case of multiple parameters.
|
handle the case of multiple parameters.
|
|
|
2004-10-26 Vincent Celier
|
2004-10-26 Vincent Celier
|
|
|
* prj-env.adb: (Contains_ALI_Files): New Boolean function
|
* prj-env.adb: (Contains_ALI_Files): New Boolean function
|
(Ada_Objects_Path.Add): For a library project, add to the object path
|
(Ada_Objects_Path.Add): For a library project, add to the object path
|
the library directory only if there is no object directory or if the
|
the library directory only if there is no object directory or if the
|
library directory contains ALI files.
|
library directory contains ALI files.
|
(Set_Ada_Paths.Add.Recursive_Add): Ditto
|
(Set_Ada_Paths.Add.Recursive_Add): Ditto
|
|
|
2004-10-26 Vincent Celier
|
2004-10-26 Vincent Celier
|
|
|
* prj-nmsc.adb (Language_Independent_Check): Do not forbid virtual
|
* prj-nmsc.adb (Language_Independent_Check): Do not forbid virtual
|
extension of library projects.
|
extension of library projects.
|
|
|
* prj-part.adb: If env var ADA_PROJECT_PATH is not defined, project
|
* prj-part.adb: If env var ADA_PROJECT_PATH is not defined, project
|
path defaults to ".:/lib/gnat".
|
path defaults to ".:/lib/gnat".
|
(Parse): For an extending all project, allow direct import of a project
|
(Parse): For an extending all project, allow direct import of a project
|
that is virtually extended.
|
that is virtually extended.
|
|
|
* prj-proc.adb (Imported_Or_Extended_Project_From): If a project with
|
* prj-proc.adb (Imported_Or_Extended_Project_From): If a project with
|
the specified name is directly imported, return its ID. Otherwise, if
|
the specified name is directly imported, return its ID. Otherwise, if
|
an extension of this project is imported, return the ID of the
|
an extension of this project is imported, return the ID of the
|
extension.
|
extension.
|
|
|
2004-10-26 Robert Dewar
|
2004-10-26 Robert Dewar
|
|
|
* s-arit64.adb: (Le3): New function, used by Scaled_Divide
|
* s-arit64.adb: (Le3): New function, used by Scaled_Divide
|
(Sub3): New procedure, used by Scaled_Divide
|
(Sub3): New procedure, used by Scaled_Divide
|
(Scaled_Divide): Substantial rewrite, avoid duplicated code, and also
|
(Scaled_Divide): Substantial rewrite, avoid duplicated code, and also
|
correct more than one instance of failure to propagate carries
|
correct more than one instance of failure to propagate carries
|
correctly.
|
correctly.
|
(Double_Divide): Handle overflow case of largest negative number
|
(Double_Divide): Handle overflow case of largest negative number
|
divided by minus one.
|
divided by minus one.
|
|
|
* s-arit64.ads (Double_Divide): Document that overflow can occur in
|
* s-arit64.ads (Double_Divide): Document that overflow can occur in
|
the case of a quotient value out of range.
|
the case of a quotient value out of range.
|
Fix comments.
|
Fix comments.
|
|
|
2004-10-26 Robert Dewar
|
2004-10-26 Robert Dewar
|
|
|
* s-bitops.adb (Bit_Eq): Remove redundant check.
|
* s-bitops.adb (Bit_Eq): Remove redundant check.
|
|
|
* s-bitops.ads: Minor comment updates
|
* s-bitops.ads: Minor comment updates
|
Change some occurrences of Address to System.Address
|
Change some occurrences of Address to System.Address
|
|
|
* s-carsi8.ads: Fix minor cut-and-paste error in comments
|
* s-carsi8.ads: Fix minor cut-and-paste error in comments
|
|
|
2004-10-26 Ed Schonberg
|
2004-10-26 Ed Schonberg
|
|
|
* sem_attr.adb (Resolve_Attribute, case 'Access): Apply proper
|
* sem_attr.adb (Resolve_Attribute, case 'Access): Apply proper
|
accessibility check to prefix that is a protected operation.
|
accessibility check to prefix that is a protected operation.
|
|
|
2004-10-26 Ed Schonberg
|
2004-10-26 Ed Schonberg
|
|
|
* sem_ch10.adb (Optional_Subunit): If file of expected subunit is
|
* sem_ch10.adb (Optional_Subunit): If file of expected subunit is
|
empty, post message on stub.
|
empty, post message on stub.
|
|
|
2004-10-26 Ed Schonberg
|
2004-10-26 Ed Schonberg
|
Javier Miranda
|
Javier Miranda
|
|
|
* sem_ch12.adb (In_Main_Context): Predicate to determine whether the
|
* sem_ch12.adb (In_Main_Context): Predicate to determine whether the
|
current instance appears within a unit that is directly in the context
|
current instance appears within a unit that is directly in the context
|
of the main unit.
|
of the main unit.
|
Used to determine whether the body of the instance should be analyzed
|
Used to determine whether the body of the instance should be analyzed
|
immediately after its spec, to make its subprogram bodies available
|
immediately after its spec, to make its subprogram bodies available
|
for front-end inlining.
|
for front-end inlining.
|
(Analyze_Formal_Array_Type): Cleanup condition that checks that range
|
(Analyze_Formal_Array_Type): Cleanup condition that checks that range
|
constraint is not allowed on the component type (AARM 12.5.3(3))
|
constraint is not allowed on the component type (AARM 12.5.3(3))
|
|
|
2004-10-26 Cyrille Comar
|
2004-10-26 Cyrille Comar
|
|
|
* sem_ch13.adb (Analyze_Attribute_Definition_Clause, case
|
* sem_ch13.adb (Analyze_Attribute_Definition_Clause, case
|
'Storage_Pool): enhance, document & limit detection of non-sharable
|
'Storage_Pool): enhance, document & limit detection of non-sharable
|
internal pools.
|
internal pools.
|
|
|
* impunit.adb: Make System.Pool_Global and System.Pool_Local visible.
|
* impunit.adb: Make System.Pool_Global and System.Pool_Local visible.
|
|
|
* s-pooglo.ads: Add more documentation now that this pool is properly
|
* s-pooglo.ads: Add more documentation now that this pool is properly
|
documented.
|
documented.
|
|
|
2004-10-26 Ed Schonberg
|
2004-10-26 Ed Schonberg
|
|
|
* sem_ch3.adb (Complete_Private_Subtype): If the full view is a task
|
* sem_ch3.adb (Complete_Private_Subtype): If the full view is a task
|
or protected type with discriminants, do not constrain the
|
or protected type with discriminants, do not constrain the
|
corresponding record type if the subtype declaration has no
|
corresponding record type if the subtype declaration has no
|
discriminant constraints. This can be the case in source code, or in
|
discriminant constraints. This can be the case in source code, or in
|
the subtype declaration created to rename an actual type within an
|
the subtype declaration created to rename an actual type within an
|
instantiation.
|
instantiation.
|
|
|
2004-10-26 Ed Schonberg
|
2004-10-26 Ed Schonberg
|
|
|
* sem_ch6.adb (Analyze_Subprogram_Body): If body is a subunit for a
|
* sem_ch6.adb (Analyze_Subprogram_Body): If body is a subunit for a
|
different kind of stub (possibly wrong name for file), do not check
|
different kind of stub (possibly wrong name for file), do not check
|
for conformance.
|
for conformance.
|
(Uses_Secondary_Stack): New subsidiary to Build_Body_To_Inline. If body
|
(Uses_Secondary_Stack): New subsidiary to Build_Body_To_Inline. If body
|
includes call to some function that returns an unconstrained type, do
|
includes call to some function that returns an unconstrained type, do
|
not inline.
|
not inline.
|
|
|
2004-10-26 Ed Schonberg
|
2004-10-26 Ed Schonberg
|
|
|
* sem_elab.adb (Check_Elab_Call): Do not check a call that does not
|
* sem_elab.adb (Check_Elab_Call): Do not check a call that does not
|
appear in the code for the main unit. Dependencies among units in the
|
appear in the code for the main unit. Dependencies among units in the
|
context of the main unit are established when those other units are
|
context of the main unit are established when those other units are
|
compiled. Otherwise spurious elaboration constraints can generate
|
compiled. Otherwise spurious elaboration constraints can generate
|
incorrect elaboration circularities.
|
incorrect elaboration circularities.
|
|
|
2004-10-26 Thomas Quinot
|
2004-10-26 Thomas Quinot
|
Ed Schonberg
|
Ed Schonberg
|
|
|
* sem_util.adb (Is_Aliased_View): Defend against the case where this
|
* sem_util.adb (Is_Aliased_View): Defend against the case where this
|
subprogram is called with a parameter that is not an object name. This
|
subprogram is called with a parameter that is not an object name. This
|
situation arises for some cases of illegal code, which is diagnosed
|
situation arises for some cases of illegal code, which is diagnosed
|
later, and in this case it is wrong to call Is_Aliased, as that might
|
later, and in this case it is wrong to call Is_Aliased, as that might
|
cause a compiler crash.
|
cause a compiler crash.
|
(Explain_Limited_Type): Refine previous fix to include
|
(Explain_Limited_Type): Refine previous fix to include
|
inherited components of derived types, to provide complete information.
|
inherited components of derived types, to provide complete information.
|
|
|
* exp_ch9.adb (Set_Privals): Set the Ekind of the actual object that
|
* exp_ch9.adb (Set_Privals): Set the Ekind of the actual object that
|
is the prival for a protected object.
|
is the prival for a protected object.
|
It is necessary to mark this entity as a variable, in addition to
|
It is necessary to mark this entity as a variable, in addition to
|
flagging it as Aliased, because Sem_Util.Is_Aliased_View has been
|
flagging it as Aliased, because Sem_Util.Is_Aliased_View has been
|
modified to avoid checking the Aliased flag on entities that are not
|
modified to avoid checking the Aliased flag on entities that are not
|
objects. (Checking that flag for non-objects is erroneous and could
|
objects. (Checking that flag for non-objects is erroneous and could
|
lead to a compiler crash).
|
lead to a compiler crash).
|
|
|
2004-10-26 Robert Dewar
|
2004-10-26 Robert Dewar
|
|
|
* s-fatgen.adb (Pred): Fix redundant test for X > 0.0, since if
|
* s-fatgen.adb (Pred): Fix redundant test for X > 0.0, since if
|
X_Frac = 0.5, then we know that the number X must be positive.
|
X_Frac = 0.5, then we know that the number X must be positive.
|
(Succ): Remove the same redundant test, and also fix the primary test
|
(Succ): Remove the same redundant test, and also fix the primary test
|
to test for X_Frac = -0.5 (used to be 0.5) which is clearly wrong.
|
to test for X_Frac = -0.5 (used to be 0.5) which is clearly wrong.
|
Minor reformatting
|
Minor reformatting
|
(Decompose): Add fuller comments to spec
|
(Decompose): Add fuller comments to spec
|
|
|
2004-10-26 Pascal Obry
|
2004-10-26 Pascal Obry
|
|
|
* tracebak.c (IS_BAD_PTR): Use IsBadCodePtr on Win32 to check for ptr
|
* tracebak.c (IS_BAD_PTR): Use IsBadCodePtr on Win32 to check for ptr
|
validity (process must have read access). Set to 0 in all other cases.
|
validity (process must have read access). Set to 0 in all other cases.
|
(STOP_FRAME): Now check for ptr validity to avoid a segmentation
|
(STOP_FRAME): Now check for ptr validity to avoid a segmentation
|
violation on Win32.
|
violation on Win32.
|
(VALID_STACK_FRAME): Check for ptr validity on Win32 to avoid a
|
(VALID_STACK_FRAME): Check for ptr validity on Win32 to avoid a
|
segmentation violation.
|
segmentation violation.
|
|
|
2004-10-26 Eric Botcazou
|
2004-10-26 Eric Botcazou
|
|
|
* trans.c (call_to_gnu): For an (in-)out parameter passed by reference
|
* trans.c (call_to_gnu): For an (in-)out parameter passed by reference
|
whose type is a constructed subtype of an aliased object with an
|
whose type is a constructed subtype of an aliased object with an
|
unconstrained nominal subtype, convert the actual to the constructed
|
unconstrained nominal subtype, convert the actual to the constructed
|
subtype before taking its address.
|
subtype before taking its address.
|
|
|
2004-10-26 Vincent Celier
|
2004-10-26 Vincent Celier
|
|
|
* a-dirval.ads, a-dirval.adb, a-dirval-vms.adb, a-dirval-mingw.adb
|
* a-dirval.ads, a-dirval.adb, a-dirval-vms.adb, a-dirval-mingw.adb
|
(Is_Path_Name_Case_Sensitive): New function
|
(Is_Path_Name_Case_Sensitive): New function
|
|
|
* a-direct.adb (To_Lower_If_Case_Insensitive): New procedure
|
* a-direct.adb (To_Lower_If_Case_Insensitive): New procedure
|
(Base_Name, Simple_Name, Current_Directory, Compose,
|
(Base_Name, Simple_Name, Current_Directory, Compose,
|
Containing_Directory, Full_Name): Call To_Lower_If_Case_Insensitive on
|
Containing_Directory, Full_Name): Call To_Lower_If_Case_Insensitive on
|
the result.
|
the result.
|
|
|
2004-10-26 Cyrille Comar
|
2004-10-26 Cyrille Comar
|
Vasiliy Fofanov
|
Vasiliy Fofanov
|
Vincent Celier
|
Vincent Celier
|
|
|
* gnat_ugn.texi: Generalize "finding memory problems" section into a
|
* gnat_ugn.texi: Generalize "finding memory problems" section into a
|
"memory management issues" section and document some of the useful
|
"memory management issues" section and document some of the useful
|
memory pools provided as part of the GNAT library.
|
memory pools provided as part of the GNAT library.
|
Remove "virtual" from declaration of A::method2 in
|
Remove "virtual" from declaration of A::method2 in
|
the simple example of Ada/C++ mixed system.
|
the simple example of Ada/C++ mixed system.
|
Library Projects may be virtually extended: their virtual extensions
|
Library Projects may be virtually extended: their virtual extensions
|
are not Library Projects.
|
are not Library Projects.
|
Added section on extending project hierarchies.
|
Added section on extending project hierarchies.
|
|
|
2004-10-19 Aaron W. LaFramboise
|
2004-10-19 Aaron W. LaFramboise
|
|
|
* adaint.c (__gnat_get_libraries_from_registry): Cast value
|
* adaint.c (__gnat_get_libraries_from_registry): Cast value
|
to LPBYTE.
|
to LPBYTE.
|
(__gnat_portable_spawn): Remove const.
|
(__gnat_portable_spawn): Remove const.
|
|
|
* mingw32.h (MAXPATHLEN): Check for previous definition.
|
* mingw32.h (MAXPATHLEN): Check for previous definition.
|
|
|
2004-10-17 Matthias Klose
|
2004-10-17 Matthias Klose
|
|
|
* gnatvsn.ads: Set gnat library version to 4.0.
|
* gnatvsn.ads: Set gnat library version to 4.0.
|
|
|
2004-10-05 Vincent Celier
|
2004-10-05 Vincent Celier
|
|
|
* mlib-tgt.ads: (Build_Dynamic_Library): New parameter Options_2
|
* mlib-tgt.ads: (Build_Dynamic_Library): New parameter Options_2
|
|
|
2004-10-04 Laurent Guerby
|
2004-10-04 Laurent Guerby
|
|
|
PR ada/15156
|
PR ada/15156
|
* Makefile.in: Define and use RANLIB_FLAGS.
|
* Makefile.in: Define and use RANLIB_FLAGS.
|
|
|
2004-10-04 Pascal Obry
|
2004-10-04 Pascal Obry
|
|
|
* tracebak.c: Always set LOWEST_ADDR to 0 on Win32 (as done on all
|
* tracebak.c: Always set LOWEST_ADDR to 0 on Win32 (as done on all
|
other x86 platforms).
|
other x86 platforms).
|
|
|
2004-10-04 Olivier Hainque
|
2004-10-04 Olivier Hainque
|
|
|
* s-tassta.adb (Task_Wrapper): Make it Convention C, which makes sense
|
* s-tassta.adb (Task_Wrapper): Make it Convention C, which makes sense
|
in general and triggers stack alignment adjustment for thread entry
|
in general and triggers stack alignment adjustment for thread entry
|
points on targets where this is necessary.
|
points on targets where this is necessary.
|
|
|
2004-10-04 Bernard Banner
|
2004-10-04 Bernard Banner
|
|
|
PR ada/13897
|
PR ada/13897
|
* Makefile.in: Add section for powerpc linux
|
* Makefile.in: Add section for powerpc linux
|
Add variant i-vxwork-x86.ads
|
Add variant i-vxwork-x86.ads
|
|
|
* i-vxwork-x86.ads, system-linux-ppc.ads: New files.
|
* i-vxwork-x86.ads, system-linux-ppc.ads: New files.
|
|
|
2004-10-04 Olivier Hainque
|
2004-10-04 Olivier Hainque
|
|
|
* init.c (__gnat_initialize): Call an Ada subprogram to perform the
|
* init.c (__gnat_initialize): Call an Ada subprogram to perform the
|
table registration calls when need be. Ensures no reference to the crt
|
table registration calls when need be. Ensures no reference to the crt
|
ctors symbol are issued in the SJLJ case, which avoids possible
|
ctors symbol are issued in the SJLJ case, which avoids possible
|
undefined symbol errors in the case of modules to be statically linked
|
undefined symbol errors in the case of modules to be statically linked
|
with the kernel.
|
with the kernel.
|
|
|
2004-10-04 Javier Miranda
|
2004-10-04 Javier Miranda
|
|
|
* sem_ch4.adb (Try_Object_Operation): Reformat the code to expand
|
* sem_ch4.adb (Try_Object_Operation): Reformat the code to expand
|
in-line the code corresponding to subprogram Analyze_Actuals. In
|
in-line the code corresponding to subprogram Analyze_Actuals. In
|
addition, analyze the actuals only in case of subprogram call.
|
addition, analyze the actuals only in case of subprogram call.
|
|
|
2004-10-04 Ed Falis
|
2004-10-04 Ed Falis
|
|
|
* s-vxwork-x86.ads: (FP_CONTEXT): Defined to be correct size
|
* s-vxwork-x86.ads: (FP_CONTEXT): Defined to be correct size
|
|
|
2004-10-04 Sergey Rybin
|
2004-10-04 Sergey Rybin
|
|
|
* g-dirope.ads (Base_Name): Clarify the meaning of the Suffix parameter
|
* g-dirope.ads (Base_Name): Clarify the meaning of the Suffix parameter
|
in the documentation.
|
in the documentation.
|
|
|
2004-10-04 Robert Dewar
|
2004-10-04 Robert Dewar
|
|
|
* sem_ch5.adb (Unblocked_Exit_Count): Now used for blocks as well as
|
* sem_ch5.adb (Unblocked_Exit_Count): Now used for blocks as well as
|
IF and CASE.
|
IF and CASE.
|
(Analyze_Block_Statement): Add circuitry to detect following dead code
|
(Analyze_Block_Statement): Add circuitry to detect following dead code
|
(Check_Unreachable_Code): Handle case of block exit
|
(Check_Unreachable_Code): Handle case of block exit
|
|
|
2004-10-04 Robert Dewar
|
2004-10-04 Robert Dewar
|
|
|
* g-spipat.adb: (XMatch): Avoid warning for Logic_Error call
|
* g-spipat.adb: (XMatch): Avoid warning for Logic_Error call
|
(XMatchD): Avoid warning for Logic_Error call
|
(XMatchD): Avoid warning for Logic_Error call
|
|
|
2004-10-04 Robert Dewar
|
2004-10-04 Robert Dewar
|
|
|
* exp_ch4.adb (Is_Procedure_Actual): Correct so that this does not
|
* exp_ch4.adb (Is_Procedure_Actual): Correct so that this does not
|
consider expressions buried within a procedure actual to be an actual.
|
consider expressions buried within a procedure actual to be an actual.
|
This caused some blowups with uses of packed slices within a procedure
|
This caused some blowups with uses of packed slices within a procedure
|
actual.
|
actual.
|
|
|
2004-10-04 Robert Dewar
|
2004-10-04 Robert Dewar
|
|
|
* exp_ch3.adb (Needs_Simple_Initialization): Modular packed arrays no
|
* exp_ch3.adb (Needs_Simple_Initialization): Modular packed arrays no
|
longer need to be initialized to zero.
|
longer need to be initialized to zero.
|
(Get_Simple_Init_Val): Modular packed arrays no longer need to be
|
(Get_Simple_Init_Val): Modular packed arrays no longer need to be
|
initialized to zero.
|
initialized to zero.
|
|
|
* checks.adb (Expr_Known_Valid): Packed arrays are now always
|
* checks.adb (Expr_Known_Valid): Packed arrays are now always
|
considered valid, even if the representation is modular. That's correct
|
considered valid, even if the representation is modular. That's correct
|
now that we no longer initialize packed modular arrays to zero.
|
now that we no longer initialize packed modular arrays to zero.
|
|
|
* exp_dbug.ads: Clarify documentation on handling of PAD and JM
|
* exp_dbug.ads: Clarify documentation on handling of PAD and JM
|
suffixes. These are now documented as the only cases in which the
|
suffixes. These are now documented as the only cases in which the
|
debugger ignores outer records.
|
debugger ignores outer records.
|
Previously, the spec allowed arbitrary suffixes for this purpose.
|
Previously, the spec allowed arbitrary suffixes for this purpose.
|
Change name of LJM to JM for packed array pad records
|
Change name of LJM to JM for packed array pad records
|
Create separate section on packed array handling, and add a whole new
|
Create separate section on packed array handling, and add a whole new
|
set of comments to this section describing the situation with packed
|
set of comments to this section describing the situation with packed
|
modular types and justification requirements depending on endianness.
|
modular types and justification requirements depending on endianness.
|
|
|
2004-10-04 Robert Dewar
|
2004-10-04 Robert Dewar
|
|
|
* a-except.adb: Add a comment for last change
|
* a-except.adb: Add a comment for last change
|
|
|
* einfo.ads: Minor spelling correction in comment
|
* einfo.ads: Minor spelling correction in comment
|
|
|
* exp_pakd.adb, gnatdll.adb, prj-attr.ads: Minor reformatting
|
* exp_pakd.adb, gnatdll.adb, prj-attr.ads: Minor reformatting
|
|
|
* sem_ch11.adb: Fix a case of using | instead of \ for continuation
|
* sem_ch11.adb: Fix a case of using | instead of \ for continuation
|
messages.
|
messages.
|
|
|
* sem_util.ads: Minor comment update
|
* sem_util.ads: Minor comment update
|
|
|
2004-10-04 Ed Schonberg
|
2004-10-04 Ed Schonberg
|
|
|
* sem_ch6.adb (Analyze_Subprogram_Body): Do not treat Inline as
|
* sem_ch6.adb (Analyze_Subprogram_Body): Do not treat Inline as
|
Inline_Always when in Configurable_Run_Time mode.
|
Inline_Always when in Configurable_Run_Time mode.
|
|
|
* sem_prag.adb (Process_Convention): If entity is an inherited
|
* sem_prag.adb (Process_Convention): If entity is an inherited
|
subprogram, apply convention to parent subprogram if in same scope.
|
subprogram, apply convention to parent subprogram if in same scope.
|
(Analyze_Pragma, case Inline): Do not treat Inline as Inline_Always
|
(Analyze_Pragma, case Inline): Do not treat Inline as Inline_Always
|
when in Configurable_Run_Time mode.
|
when in Configurable_Run_Time mode.
|
|
|
2004-10-04 Ed Schonberg
|
2004-10-04 Ed Schonberg
|
|
|
* sem_ch3.adb (Build_Derived_Record_Type): Set First/Last entity of
|
* sem_ch3.adb (Build_Derived_Record_Type): Set First/Last entity of
|
class_wide type after component list has been inherited.
|
class_wide type after component list has been inherited.
|
|
|
2004-10-04 Ed Schonberg
|
2004-10-04 Ed Schonberg
|
|
|
* sem_ch12.adb (Check_Generic_Actuals): New predicate
|
* sem_ch12.adb (Check_Generic_Actuals): New predicate
|
Denotes_Previous_Actual, to handle properly the case of a private
|
Denotes_Previous_Actual, to handle properly the case of a private
|
actual that is also the component type of a subsequent array actual.
|
actual that is also the component type of a subsequent array actual.
|
The visibility status of the first actual is not affected when the
|
The visibility status of the first actual is not affected when the
|
second is installed.
|
second is installed.
|
(Process_Nested_Formal): Subsidiary of Instantiate_Formal_Package, to
|
(Process_Nested_Formal): Subsidiary of Instantiate_Formal_Package, to
|
make fully recursive the treatment of formals of packages declared
|
make fully recursive the treatment of formals of packages declared
|
with a box.
|
with a box.
|
(Restore_Nested_Formal): Subsidiary of Restore_Private_Views, to undo
|
(Restore_Nested_Formal): Subsidiary of Restore_Private_Views, to undo
|
the above on exit from an instantiation.
|
the above on exit from an instantiation.
|
(Denotes_Formal_Package): When called from Restore_Private_Views, ignore
|
(Denotes_Formal_Package): When called from Restore_Private_Views, ignore
|
current instantiation which is now complete.
|
current instantiation which is now complete.
|
(Analyze_Package_Instantiation): No instantiated body is needed if the
|
(Analyze_Package_Instantiation): No instantiated body is needed if the
|
main unit is generic. Efficient, and avoid anomalies when a instance
|
main unit is generic. Efficient, and avoid anomalies when a instance
|
appears in a package accessed through rtsfind.
|
appears in a package accessed through rtsfind.
|
|
|
2004-10-04 Ed Schonberg
|
2004-10-04 Ed Schonberg
|
|
|
* exp_ch6.adb (Expand_N_Function_Call): If stack checking is enabled,
|
* exp_ch6.adb (Expand_N_Function_Call): If stack checking is enabled,
|
do not generate a declaration for a temporary if the call is part of a
|
do not generate a declaration for a temporary if the call is part of a
|
library-level instantiation.
|
library-level instantiation.
|
|
|
2004-10-04 Ed Schonberg
|
2004-10-04 Ed Schonberg
|
|
|
* sem_util.adb (Explain_Limited_Type): Ignore internal components when
|
* sem_util.adb (Explain_Limited_Type): Ignore internal components when
|
searching for a limited component to flag.
|
searching for a limited component to flag.
|
|
|
* exp_attr.adb (Freeze_Stream_Subprogram): Subsidiary procedure to
|
* exp_attr.adb (Freeze_Stream_Subprogram): Subsidiary procedure to
|
expansion of Input, to account for the fact that the implicit call
|
expansion of Input, to account for the fact that the implicit call
|
generated by the attribute reference must freeze the user-defined
|
generated by the attribute reference must freeze the user-defined
|
stream subprogram. This is only relevant to 'Input, because it can
|
stream subprogram. This is only relevant to 'Input, because it can
|
appear in an object declaration, prior to the body of the subprogram.
|
appear in an object declaration, prior to the body of the subprogram.
|
|
|
* sem_ch13.adb (Rep_Item_Too_Late): Make the error non-serious, so that
|
* sem_ch13.adb (Rep_Item_Too_Late): Make the error non-serious, so that
|
expansion can proceed and further errors uncovered.
|
expansion can proceed and further errors uncovered.
|
(Minor clean up): Fix cases of using | instead of \ for continuation
|
(Minor clean up): Fix cases of using | instead of \ for continuation
|
messages.
|
messages.
|
|
|
2004-10-04 Richard Kenner
|
2004-10-04 Richard Kenner
|
|
|
* cuintp.c, decl.c, utils2.c: Use gcc_assert and gcc_unreachable.
|
* cuintp.c, decl.c, utils2.c: Use gcc_assert and gcc_unreachable.
|
|
|
* trans.c (assoc_to_constructor): Fix unused var warning if no checking.
|
* trans.c (assoc_to_constructor): Fix unused var warning if no checking.
|
(gnat_gimplify_expr, case ADDR_EXPR): Fix error in last change.
|
(gnat_gimplify_expr, case ADDR_EXPR): Fix error in last change.
|
Use gcc_assert and gcc_unreachable.
|
Use gcc_assert and gcc_unreachable.
|
|
|
* decl.c (gnat_to_gnu_entity, case object): Check and process a
|
* decl.c (gnat_to_gnu_entity, case object): Check and process a
|
specified alignment before validating size.
|
specified alignment before validating size.
|
(gnat_to_gnu_entity) : Create a
|
(gnat_to_gnu_entity) : Create a
|
stripped-down declaration for the type of the inner field when making
|
stripped-down declaration for the type of the inner field when making
|
a JM type.
|
a JM type.
|
|
|
* utils.c (finish_record_type): Do not compute the size in units
|
* utils.c (finish_record_type): Do not compute the size in units
|
incrementally. Instead compute it once for the rep clause case.
|
incrementally. Instead compute it once for the rep clause case.
|
Use gcc_assert and gcc_unreachable.
|
Use gcc_assert and gcc_unreachable.
|
|
|
2004-10-04 Vincent Celier
|
2004-10-04 Vincent Celier
|
|
|
* a-dirval-mingw.adb (Invalid_Character): Add '\' as invalid character
|
* a-dirval-mingw.adb (Invalid_Character): Add '\' as invalid character
|
in file name.
|
in file name.
|
(Is_Valid_Path_Name): Take '/' as a directory separator.
|
(Is_Valid_Path_Name): Take '/' as a directory separator.
|
|
|
2004-10-04 Vincent Celier
|
2004-10-04 Vincent Celier
|
|
|
* prj-part.adb (Parse_Single_Project): Call Is_Extending_All
|
* prj-part.adb (Parse_Single_Project): Call Is_Extending_All
|
(Extended_Project) only if Extended_Project is defined, to avoid
|
(Extended_Project) only if Extended_Project is defined, to avoid
|
assertion error.
|
assertion error.
|
(Post_Parse_Context_Clause): Always call Set_Path_Name_Of with a
|
(Post_Parse_Context_Clause): Always call Set_Path_Name_Of with a
|
resolved path.
|
resolved path.
|
(Parse_Single_Project): Ditto.
|
(Parse_Single_Project): Ditto.
|
|
|
* prj-env.adb (Set_Ada_Paths.Add.Recursive_Add): Do not call
|
* prj-env.adb (Set_Ada_Paths.Add.Recursive_Add): Do not call
|
Add_To_Project_Path for virtual projects.
|
Add_To_Project_Path for virtual projects.
|
|
|
2004-10-04 Vincent Celier
|
2004-10-04 Vincent Celier
|
|
|
* mlib-tgt-tru64.adb, mlib-tgt-aix.adb, mlib-tgt-irix.adb,
|
* mlib-tgt-tru64.adb, mlib-tgt-aix.adb, mlib-tgt-irix.adb,
|
mlib-tgt-hpux.adb, mlib-tgt-linux.adb, mlib-tgt-solaris.adb,
|
mlib-tgt-hpux.adb, mlib-tgt-linux.adb, mlib-tgt-solaris.adb,
|
mlib-tgt-vms-alpha.adb, mlib-tgt-vms-ia64.adb, mlib-tgt-mingw.adb,
|
mlib-tgt-vms-alpha.adb, mlib-tgt-vms-ia64.adb, mlib-tgt-mingw.adb,
|
mlib-tgt-vxworks.adb, mlib-tgt.adb (Build_Dynamic_Library): New
|
mlib-tgt-vxworks.adb, mlib-tgt.adb (Build_Dynamic_Library): New
|
parameter Options_2.
|
parameter Options_2.
|
|
|
* mlib-prj.ads, mlib-prj.adb (Build_Library): Call
|
* mlib-prj.ads, mlib-prj.adb (Build_Library): Call
|
Build_Dynamic_Library with an empty Options_2.
|
Build_Dynamic_Library with an empty Options_2.
|
|
|
* mlib-utl.ads, mlib-utl.adb (Gcc): Parameter Options_2 has no
|
* mlib-utl.ads, mlib-utl.adb (Gcc): Parameter Options_2 has no
|
default anymore.
|
default anymore.
|
|
|
* makegpr.adb (Get_Imported_Directories.add): Remove trailing
|
* makegpr.adb (Get_Imported_Directories.add): Remove trailing
|
directory separator, if any.
|
directory separator, if any.
|
(Gprmake): Do not allow mains on the command line for library projects.
|
(Gprmake): Do not allow mains on the command line for library projects.
|
Do not attempt to link when the project is a library project.
|
Do not attempt to link when the project is a library project.
|
(Library_Opts): New table to store Library_Options.
|
(Library_Opts): New table to store Library_Options.
|
(Build_Library): If Library_Options is specified, pass these options
|
(Build_Library): If Library_Options is specified, pass these options
|
when building a shared library.
|
when building a shared library.
|
|
|
2004-10-04 Jose Ruiz
|
2004-10-04 Jose Ruiz
|
|
|
* s-tposen.adb (Service_Entry): The object must be always unlocked at
|
* s-tposen.adb (Service_Entry): The object must be always unlocked at
|
the end of this procedure now that the unlock operation was inserted
|
the end of this procedure now that the unlock operation was inserted
|
by the expander.
|
by the expander.
|
|
|
2004-10-04 Jose Ruiz
|
2004-10-04 Jose Ruiz
|
|
|
* targparm.ads, targparm.adb (Targparm_Tags): Add PAS value
|
* targparm.ads, targparm.adb (Targparm_Tags): Add PAS value
|
corresponding to the Preallocated_Stacks flags in System.
|
corresponding to the Preallocated_Stacks flags in System.
|
(Get_Target_Parameters): Including the processing for
|
(Get_Target_Parameters): Including the processing for
|
Preallocated_Stacks.
|
Preallocated_Stacks.
|
|
|
* system.ads, system-vxworks-x86.ads, system-darwin-ppc.ads,
|
* system.ads, system-vxworks-x86.ads, system-darwin-ppc.ads,
|
system-vms_64.ads, system-unixware.ads, system-linux-ia64.ads,
|
system-vms_64.ads, system-unixware.ads, system-linux-ia64.ads,
|
system-freebsd-x86.ads, system-lynxos-ppc.ads, system-lynxos-x86.ads,
|
system-freebsd-x86.ads, system-lynxos-ppc.ads, system-lynxos-x86.ads,
|
system-linux-x86_64.ads, system-tru64.ads, system-aix.ads,
|
system-linux-x86_64.ads, system-tru64.ads, system-aix.ads,
|
system-vxworks-sparcv9.ads, system-vxworks-xscale.ads,
|
system-vxworks-sparcv9.ads, system-vxworks-xscale.ads,
|
system-solaris-x86.ads, system-irix-o32.ads, system-irix-n32.ads,
|
system-solaris-x86.ads, system-irix-o32.ads, system-irix-n32.ads,
|
system-hpux.ads, system-vxworks-m68k.ads, system-linux-x86.ads,
|
system-hpux.ads, system-vxworks-m68k.ads, system-linux-x86.ads,
|
system-vxworks-mips.ads, system-os2.ads, system-interix.ads,
|
system-vxworks-mips.ads, system-os2.ads, system-interix.ads,
|
system-solaris-sparc.ads, system-solaris-sparcv9.ads, system-vms.ads,
|
system-solaris-sparc.ads, system-solaris-sparcv9.ads, system-vms.ads,
|
system-mingw.ads, system-vms-zcx.ads, system-vxworks-ppc.ads,
|
system-mingw.ads, system-vms-zcx.ads, system-vxworks-ppc.ads,
|
system-vxworks-alpha.ads: Add the flag Preallocated_Stacks, that is
|
system-vxworks-alpha.ads: Add the flag Preallocated_Stacks, that is
|
used to signal whether the compiler creates the required stacks and
|
used to signal whether the compiler creates the required stacks and
|
descriptors for the different tasks (when True) or it is done by the
|
descriptors for the different tasks (when True) or it is done by the
|
underlying operating system at run time (when False).
|
underlying operating system at run time (when False).
|
It is initially set to False in all targets.
|
It is initially set to False in all targets.
|
|
|
* exp_ch9.adb (Expand_N_Task_Type_Declaration): Create the task stack
|
* exp_ch9.adb (Expand_N_Task_Type_Declaration): Create the task stack
|
if it is supported by the target.
|
if it is supported by the target.
|
(Make_Task_Create_Call): Pass the stack address if it has been
|
(Make_Task_Create_Call): Pass the stack address if it has been
|
previously created. Otherwise pass a Null_Address.
|
previously created. Otherwise pass a Null_Address.
|
|
|
* snames.adb: Add _stack.
|
* snames.adb: Add _stack.
|
|
|
* snames.ads: Add Name_uStack. Required to allow the expander to
|
* snames.ads: Add Name_uStack. Required to allow the expander to
|
statically allocated task stacks.
|
statically allocated task stacks.
|
|
|
* s-tarest.ads, s-tarest.adb (Create_Restricted_Task): Add
|
* s-tarest.ads, s-tarest.adb (Create_Restricted_Task): Add
|
Stack_Address argument.
|
Stack_Address argument.
|
Check that its value is equal to Null_Address because this target does
|
Check that its value is equal to Null_Address because this target does
|
not support the static stack allocation.
|
not support the static stack allocation.
|
|
|
2004-10-04 Thomas Quinot
|
2004-10-04 Thomas Quinot
|
|
|
* usage.adb: Change "pragma inline" to "pragma Inline" in information
|
* usage.adb: Change "pragma inline" to "pragma Inline" in information
|
and error messages
|
and error messages
|
|
|
2004-10-04 Thomas Quinot
|
2004-10-04 Thomas Quinot
|
|
|
* exp_dist.adb: Split declaration of asynchronous flag out of
|
* exp_dist.adb: Split declaration of asynchronous flag out of
|
Add_RACW_Read_Attribute.
|
Add_RACW_Read_Attribute.
|
Minor reformatting for better alignment with PolyORB version.
|
Minor reformatting for better alignment with PolyORB version.
|
Store the entity for the asynchronous flag of an RACW, rather than the
|
Store the entity for the asynchronous flag of an RACW, rather than the
|
expression, in the asynchronous flags table. This will allow this flag
|
expression, in the asynchronous flags table. This will allow this flag
|
to be used in other subprograms beside Add_RACW_Read_Attribute.
|
to be used in other subprograms beside Add_RACW_Read_Attribute.
|
|
|
2004-10-04 Thomas Quinot
|
2004-10-04 Thomas Quinot
|
|
|
* g-socket.ads, g-socket.adb, g-socthi.adb, socket.c,
|
* g-socket.ads, g-socket.adb, g-socthi.adb, socket.c,
|
g-soccon-aix.ads, g-soccon-irix.ads, g-soccon-hpux.ads,
|
g-soccon-aix.ads, g-soccon-irix.ads, g-soccon-hpux.ads,
|
g-soccon-interix.ads, g-soccon-solaris.ads, g-soccon-vms.adb,
|
g-soccon-interix.ads, g-soccon-solaris.ads, g-soccon-vms.adb,
|
g-soccon-mingw.ads, g-soccon-vxworks.ads, g-soccon-freebsd.ads,
|
g-soccon-mingw.ads, g-soccon-vxworks.ads, g-soccon-freebsd.ads,
|
g-soccon.ads, g-soccon-unixware.ads, g-soccon-tru64.ads: Add new
|
g-soccon.ads, g-soccon-unixware.ads, g-soccon-tru64.ads: Add new
|
sockets constant MSG_NOSIGNAL (Linux-specific).
|
sockets constant MSG_NOSIGNAL (Linux-specific).
|
Add new sockets constant MSG_Forced_Flags, list of flags to be set on
|
Add new sockets constant MSG_Forced_Flags, list of flags to be set on
|
all Send operations.
|
all Send operations.
|
For Linux, set MSG_NOSIGNAL on all send operations to prevent them
|
For Linux, set MSG_NOSIGNAL on all send operations to prevent them
|
from trigerring SIGPIPE.
|
from trigerring SIGPIPE.
|
Rename components to avoid clash with Ada 2005 possible reserved
|
Rename components to avoid clash with Ada 2005 possible reserved
|
word 'interface'.
|
word 'interface'.
|
(Check_Selector): When the select system call returns with an error
|
(Check_Selector): When the select system call returns with an error
|
condition, propagate Socket_Error to the caller.
|
condition, propagate Socket_Error to the caller.
|
|
|
2004-10-01 Jan Hubicka
|
2004-10-01 Jan Hubicka
|
|
|
* misc.c (gnat_expand_body): Update call of tree_rest_of_compilation.
|
* misc.c (gnat_expand_body): Update call of tree_rest_of_compilation.
|
|
|
2004-09-23 Robert Dewar
|
2004-09-23 Robert Dewar
|
|
|
PR ada/17540
|
PR ada/17540
|
* sem_prag.adb (Process_Import_Or_Interface): Don't set Is_Public here,
|
* sem_prag.adb (Process_Import_Or_Interface): Don't set Is_Public here,
|
instead do this at freeze time (we won't do it if there is an address
|
instead do this at freeze time (we won't do it if there is an address
|
clause).
|
clause).
|
Change "pragma inline" to "pragma Inline" in information and error
|
Change "pragma inline" to "pragma Inline" in information and error
|
messages.
|
messages.
|
Minor reformatting.
|
Minor reformatting.
|
|
|
* freeze.adb (Check_Address_Clause): Remove previous change, not the
|
* freeze.adb (Check_Address_Clause): Remove previous change, not the
|
right way of doing things after all.
|
right way of doing things after all.
|
(Freeze_Entity): For object, set Is_Public for imported entities
|
(Freeze_Entity): For object, set Is_Public for imported entities
|
unless there is an address clause present.
|
unless there is an address clause present.
|
|
|
2004-09-21 Olivier Hainque
|
2004-09-21 Olivier Hainque
|
|
|
* decl.c (gnat_to_gnu_entity) : Check for a
|
* decl.c (gnat_to_gnu_entity) : Check for a
|
dummy designated type via TYPE_MODE instead of COMPLETE_TYPE_P. This
|
dummy designated type via TYPE_MODE instead of COMPLETE_TYPE_P. This
|
ensures proper handling of types with rep clauses, which might have
|
ensures proper handling of types with rep clauses, which might have
|
their TYPE_SIZE set already.
|
their TYPE_SIZE set already.
|
|
|
2004-09-21 Robert Dewar
|
2004-09-21 Robert Dewar
|
|
|
* decl.c (gnat_to_gnu_type, case E_Modular_Integer_Type): Wrap modular
|
* decl.c (gnat_to_gnu_type, case E_Modular_Integer_Type): Wrap modular
|
packed array types in both little- and big-endian cases. This change
|
packed array types in both little- and big-endian cases. This change
|
ensures that we no longer count on the unused bits being initialized
|
ensures that we no longer count on the unused bits being initialized
|
for such types (and in particular ensures that equality testing will
|
for such types (and in particular ensures that equality testing will
|
only read the relevant bits).
|
only read the relevant bits).
|
Change name TYPE_LEFT_JUSTIFIED_MODULAR_P to TYPE_JUSTIFIED_MODULAR_P
|
Change name TYPE_LEFT_JUSTIFIED_MODULAR_P to TYPE_JUSTIFIED_MODULAR_P
|
These changes mean that we no longer need to initialize small packed
|
These changes mean that we no longer need to initialize small packed
|
arrays.
|
arrays.
|
(gnat_to_gnu_entity) : Apply the same
|
(gnat_to_gnu_entity) : Apply the same
|
optimization to an LJM field as to its parent field.
|
optimization to an LJM field as to its parent field.
|
|
|
* ada-tree.h, trans.c, utils.c, utils2.c:
|
* ada-tree.h, trans.c, utils.c, utils2.c:
|
Change name TYPE_LEFT_JUSTIFIED_MODULAR_P to TYPE_JUSTIFIED_MODULAR_P
|
Change name TYPE_LEFT_JUSTIFIED_MODULAR_P to TYPE_JUSTIFIED_MODULAR_P
|
|
|
2004-09-20 Jan Hubicka
|
2004-09-20 Jan Hubicka
|
|
|
* utils.c (gnat_finalize): Remove.
|
* utils.c (gnat_finalize): Remove.
|
(end_subprog_body): Directly call cgraph_finalize_function;
|
(end_subprog_body): Directly call cgraph_finalize_function;
|
do not lower the nested functions.
|
do not lower the nested functions.
|
|
|
2004-09-20 Robert Dewar
|
2004-09-20 Robert Dewar
|
|
|
PR ada/17540
|
PR ada/17540
|
* freeze.adb (Check_Address_Clause): Reset Is_Imported and Is_Public
|
* freeze.adb (Check_Address_Clause): Reset Is_Imported and Is_Public
|
if an address clause is present, since that means that the Import
|
if an address clause is present, since that means that the Import
|
should be ignored.
|
should be ignored.
|
|
|
2004-09-20 Arnaud Charlet
|
2004-09-20 Arnaud Charlet
|
|
|
* 5tsystem.ads: Removed, no longer used.
|
* 5tsystem.ads: Removed, no longer used.
|
|
|
2004-09-17 Jeffrey D. Oldham
|
2004-09-17 Jeffrey D. Oldham
|
Zack Weinberg
|
Zack Weinberg
|
|
|
* ada-tree.def: Use tree_code_class enumeration constants
|
* ada-tree.def: Use tree_code_class enumeration constants
|
instead of code letters.
|
instead of code letters.
|
* ada-tree.h, decl.c, misc.c, trans.c, utils.c, utils2.c:
|
* ada-tree.h, decl.c, misc.c, trans.c, utils.c, utils2.c:
|
Update for new tree-class enumeration constants.
|
Update for new tree-class enumeration constants.
|
|
|
2004-09-17 Vincent Celier
|
2004-09-17 Vincent Celier
|
|
|
* prj-attr-pm.ads, prj-attr-pm.adb: New files, to split some private
|
* prj-attr-pm.ads, prj-attr-pm.adb: New files, to split some private
|
capabilities of the general project manager.
|
capabilities of the general project manager.
|
|
|
2004-09-09 Vincent Celier
|
2004-09-09 Vincent Celier
|
|
|
* a-direct.ads: Add pragma Ada_05
|
* a-direct.ads: Add pragma Ada_05
|
(Directory_Entry_Type): Give default value to component Kind to avoid
|
(Directory_Entry_Type): Give default value to component Kind to avoid
|
not initialized warnings.
|
not initialized warnings.
|
|
|
* a-direct.adb (Current_Directory): Remove directory separator at the
|
* a-direct.adb (Current_Directory): Remove directory separator at the
|
end.
|
end.
|
(Delete_Directory, Delete_Tree): Raise Name_Error if Directory is not
|
(Delete_Directory, Delete_Tree): Raise Name_Error if Directory is not
|
an existing directory.
|
an existing directory.
|
(Fetch_Next_Entry): Give default value to variable Kind to avoid warning
|
(Fetch_Next_Entry): Give default value to variable Kind to avoid warning
|
(Size (String)): Function C_Size returns Long_Integer, not File_Size.
|
(Size (String)): Function C_Size returns Long_Integer, not File_Size.
|
Convert the result to File_Size.
|
Convert the result to File_Size.
|
|
|
* prj.ads: (Project_Error): New exception
|
* prj.ads: (Project_Error): New exception
|
|
|
* prj-attr.adb: Except in procedure Initialize, Fail comes from
|
* prj-attr.adb: Except in procedure Initialize, Fail comes from
|
Prj.Com, not from Osint.
|
Prj.Com, not from Osint.
|
(Attrs, Package_Attributes): Tables moved to private part of spec
|
(Attrs, Package_Attributes): Tables moved to private part of spec
|
(Add_Attribute, Add_Unknown_Package): Moved to new child package
|
(Add_Attribute, Add_Unknown_Package): Moved to new child package
|
Prj.Attr.PM.
|
Prj.Attr.PM.
|
(Register_New_Package (Name, Attributes), Register_New_Attribute): Raise
|
(Register_New_Package (Name, Attributes), Register_New_Attribute): Raise
|
Prj.Project_Error after call to Fail.
|
Prj.Project_Error after call to Fail.
|
(Register_New_Package (Name, Id)): Set Id to Empty_Package after calling
|
(Register_New_Package (Name, Id)): Set Id to Empty_Package after calling
|
Fail. Check that package name is not already in use.
|
Fail. Check that package name is not already in use.
|
|
|
* prj-attr.ads: Comment updates to indicate that all subprograms may be
|
* prj-attr.ads: Comment updates to indicate that all subprograms may be
|
used by tools, not only by the project manager, and to indicate that
|
used by tools, not only by the project manager, and to indicate that
|
exception Prj.Prj_Error may be raised in case of problem.
|
exception Prj.Prj_Error may be raised in case of problem.
|
(Add_Unknown_Package, Add_Attribute): Moved to new child package
|
(Add_Unknown_Package, Add_Attribute): Moved to new child package
|
Prj.Attr.PM.
|
Prj.Attr.PM.
|
(Attrs, Package_Attributes): Table instantiations moved from the body to
|
(Attrs, Package_Attributes): Table instantiations moved from the body to
|
the private part to be accessible from Prj.Attr.PM body.
|
the private part to be accessible from Prj.Attr.PM body.
|
|
|
* prj-dect.adb (Parse_Package_Declaration): Call Add_Unknown_Package
|
* prj-dect.adb (Parse_Package_Declaration): Call Add_Unknown_Package
|
from new package Prj.Attr.PM.
|
from new package Prj.Attr.PM.
|
(Parse_Attribute_Declaration): Call Add_Attribute from new package
|
(Parse_Attribute_Declaration): Call Add_Attribute from new package
|
Prj.Attr.PM.
|
Prj.Attr.PM.
|
|
|
* Makefile.in: Add prj-attr-pm.o to gnatmake object list
|
* Makefile.in: Add prj-attr-pm.o to gnatmake object list
|
|
|
* gnatbind.adb (Gnatbind): Correct warning message (Elaboration_Check
|
* gnatbind.adb (Gnatbind): Correct warning message (Elaboration_Check
|
instead of Elaboration_Checks).
|
instead of Elaboration_Checks).
|
|
|
* a-calend.adb: Minor reformatting
|
* a-calend.adb: Minor reformatting
|
|
|
2004-09-09 Richard Kenner
|
2004-09-09 Richard Kenner
|
|
|
* gigi.h (maybe_pad_type): New declaration.
|
* gigi.h (maybe_pad_type): New declaration.
|
(create_subprog_type): New arg RETURNS_BY_TARGET_PTR.
|
(create_subprog_type): New arg RETURNS_BY_TARGET_PTR.
|
|
|
* ada-tree.h: (TYPE_RETURNS_BY_TARGET_PTR_P): New macro.
|
* ada-tree.h: (TYPE_RETURNS_BY_TARGET_PTR_P): New macro.
|
|
|
* cuintp.c: Convert to use buildN.
|
* cuintp.c: Convert to use buildN.
|
|
|
* decl.c (maybe_pad_type): No longer static.
|
* decl.c (maybe_pad_type): No longer static.
|
(gnat_to_gnu_entity, case E_Function): Handle case of returning by
|
(gnat_to_gnu_entity, case E_Function): Handle case of returning by
|
target pointer.
|
target pointer.
|
Convert to use buildN.
|
Convert to use buildN.
|
|
|
* trans.c (call_to_gnu): Add arg GNU_TARGET; support
|
* trans.c (call_to_gnu): Add arg GNU_TARGET; support
|
TYPE_RETURNS_BY_TARGET_PTR_P. All callers changed.
|
TYPE_RETURNS_BY_TARGET_PTR_P. All callers changed.
|
(gnat_to_gnu, case N_Assignment_Statement): Call call_to_gnu if call on
|
(gnat_to_gnu, case N_Assignment_Statement): Call call_to_gnu if call on
|
RHS.
|
RHS.
|
(gnat_to_gnu, case N_Return): Handle TYPE_RETURN_BY_TARGET_PTR_P.
|
(gnat_to_gnu, case N_Return): Handle TYPE_RETURN_BY_TARGET_PTR_P.
|
(gnat_gimplify_expr, case ADDR_EXPR): New case.
|
(gnat_gimplify_expr, case ADDR_EXPR): New case.
|
Convert to use buildN.
|
Convert to use buildN.
|
|
|
* utils2.c (gnat_build_constructor): Also set TREE_INVARIANT and
|
* utils2.c (gnat_build_constructor): Also set TREE_INVARIANT and
|
TREE_READONLY for const.
|
TREE_READONLY for const.
|
Convert to use buildN.
|
Convert to use buildN.
|
|
|
* utils.c (create_subprog_type): New operand RETURNS_BY_TARGET_PTR.
|
* utils.c (create_subprog_type): New operand RETURNS_BY_TARGET_PTR.
|
(create_var_decl): Refine when TREE_STATIC is set.
|
(create_var_decl): Refine when TREE_STATIC is set.
|
Convert to use buildN.
|
Convert to use buildN.
|
|
|
2004-09-09 Gary Dismukes
|
2004-09-09 Gary Dismukes
|
|
|
* gnat_ugn.texi: Delete text relating to checking of ali and object
|
* gnat_ugn.texi: Delete text relating to checking of ali and object
|
consistency.
|
consistency.
|
|
|
* a-except.adb (Rcheck_*): Add pragmas No_Return for each of these
|
* a-except.adb (Rcheck_*): Add pragmas No_Return for each of these
|
routines.
|
routines.
|
|
|
2004-09-09 Jose Ruiz
|
2004-09-09 Jose Ruiz
|
|
|
* gnat_ugn.texi: Add Detect_Blocking to the list of configuration
|
* gnat_ugn.texi: Add Detect_Blocking to the list of configuration
|
pragmas recognized by GNAT.
|
pragmas recognized by GNAT.
|
|
|
* gnat_rm.texi: Document pragma Detect_Blocking.
|
* gnat_rm.texi: Document pragma Detect_Blocking.
|
|
|
* s-solita.adb (Timed_Delay_T): When pragma Detect_Blocking is active,
|
* s-solita.adb (Timed_Delay_T): When pragma Detect_Blocking is active,
|
raise Program_Error if called from a protected operation.
|
raise Program_Error if called from a protected operation.
|
|
|
* s-taprob.adb (Lock): When pragma Detect_Blocking is active increase
|
* s-taprob.adb (Lock): When pragma Detect_Blocking is active increase
|
the protected action nesting level.
|
the protected action nesting level.
|
(Lock_Read_Only): When pragma Detect_Blocking is active increase the
|
(Lock_Read_Only): When pragma Detect_Blocking is active increase the
|
protected action nesting level.
|
protected action nesting level.
|
(Unlock): When pragma Detect_Blocking is active decrease the protected
|
(Unlock): When pragma Detect_Blocking is active decrease the protected
|
action nesting level.
|
action nesting level.
|
|
|
* s-taskin.adb (Initialize_ATCB): Initialize to 0 the
|
* s-taskin.adb (Initialize_ATCB): Initialize to 0 the
|
Protected_Action_Nesting.
|
Protected_Action_Nesting.
|
|
|
* s-taskin.ads: Adding the field Protected_Action_Nesting to the
|
* s-taskin.ads: Adding the field Protected_Action_Nesting to the
|
Common_ATCB record. It contains the dynamic level of protected action
|
Common_ATCB record. It contains the dynamic level of protected action
|
nesting for each task. It is needed for checking whether potentially
|
nesting for each task. It is needed for checking whether potentially
|
blocking operations are called from protected operations.
|
blocking operations are called from protected operations.
|
(Detect_Blocking): Adding a Boolean constant reflecting whether pragma
|
(Detect_Blocking): Adding a Boolean constant reflecting whether pragma
|
Detect_Blocking is active or not in the partition.
|
Detect_Blocking is active or not in the partition.
|
|
|
* s-tasren.adb (Call_Simple): When pragma Detect_Blocking is active,
|
* s-tasren.adb (Call_Simple): When pragma Detect_Blocking is active,
|
raise Program_Error if called from a protected operation.
|
raise Program_Error if called from a protected operation.
|
(Task_Entry_Call): When pragma Detect_Blocking is active, raise
|
(Task_Entry_Call): When pragma Detect_Blocking is active, raise
|
Program_Error if called from a protected operation.
|
Program_Error if called from a protected operation.
|
(Timed_Task_Entry_Call): When pragma Detect_Blocking is active, raise
|
(Timed_Task_Entry_Call): When pragma Detect_Blocking is active, raise
|
Program_Error if called from a protected operation.
|
Program_Error if called from a protected operation.
|
|
|
* s-tassta.adb (Abort_Tasks): When pragma Detect_Blocking is active,
|
* s-tassta.adb (Abort_Tasks): When pragma Detect_Blocking is active,
|
raise Program_Error if called from a protected operation.
|
raise Program_Error if called from a protected operation.
|
|
|
* s-tpoben.adb (Lock_Entries): When pragma Detect_Blocking is active,
|
* s-tpoben.adb (Lock_Entries): When pragma Detect_Blocking is active,
|
raise Program_Error if called from a protected operation, and increase
|
raise Program_Error if called from a protected operation, and increase
|
the protected action nesting level.
|
the protected action nesting level.
|
(Lock_Read_Only_Entries): When pragma Detect_Blocking is active, raise
|
(Lock_Read_Only_Entries): When pragma Detect_Blocking is active, raise
|
Program_Error if called from a protected operation, and increase the
|
Program_Error if called from a protected operation, and increase the
|
protected action nesting level.
|
protected action nesting level.
|
(Unlock_Entries): When pragma Detect_Blocking is active decrease the
|
(Unlock_Entries): When pragma Detect_Blocking is active decrease the
|
protected action nesting level.
|
protected action nesting level.
|
|
|
* s-tposen.adb (Lock_Entry): When pragma Detect_Blocking is active,
|
* s-tposen.adb (Lock_Entry): When pragma Detect_Blocking is active,
|
raise Program_Error if called from a protected operation, and increase
|
raise Program_Error if called from a protected operation, and increase
|
the protected action nesting level.
|
the protected action nesting level.
|
(Lock_Read_Only_Entry): When pragma Detect_Blocking is active, raise
|
(Lock_Read_Only_Entry): When pragma Detect_Blocking is active, raise
|
Program_Error if called from a protected operation, and increase the
|
Program_Error if called from a protected operation, and increase the
|
protected action nesting level.
|
protected action nesting level.
|
(Protected_Single_Entry_Call): When pragma Detect_Blocking is active,
|
(Protected_Single_Entry_Call): When pragma Detect_Blocking is active,
|
raise Program_Error if called from a protected operation.
|
raise Program_Error if called from a protected operation.
|
(Timed_Protected_Single_Entry_Call): When pragma Detect_Blocking is
|
(Timed_Protected_Single_Entry_Call): When pragma Detect_Blocking is
|
active, raise Program_Error if called from a protected operation.
|
active, raise Program_Error if called from a protected operation.
|
(Unlock_Entry): When pragma Detect_Blocking is active decrease the
|
(Unlock_Entry): When pragma Detect_Blocking is active decrease the
|
protected action nesting level.
|
protected action nesting level.
|
|
|
* sem_util.adb (Check_Potentially_Blocking_Operation): Remove the
|
* sem_util.adb (Check_Potentially_Blocking_Operation): Remove the
|
insertion of the statement raising Program_Error. The run time
|
insertion of the statement raising Program_Error. The run time
|
contains the required machinery for handling that.
|
contains the required machinery for handling that.
|
|
|
* sem_util.ads: Change comment associated to procedure
|
* sem_util.ads: Change comment associated to procedure
|
Check_Potentially_Blocking_Operation.
|
Check_Potentially_Blocking_Operation.
|
This procedure does not insert a call for raising the exception because
|
This procedure does not insert a call for raising the exception because
|
that is currently done by the run time.
|
that is currently done by the run time.
|
|
|
* raise.h (__gnat_set_globals): Pass the detect_blocking parameter.
|
* raise.h (__gnat_set_globals): Pass the detect_blocking parameter.
|
|
|
* init.c: Add the global variable __gl_detect_blocking that indicates
|
* init.c: Add the global variable __gl_detect_blocking that indicates
|
whether pragma Detect_Blocking is active (1) or not (0). Needed for
|
whether pragma Detect_Blocking is active (1) or not (0). Needed for
|
making the pragma available at run time.
|
making the pragma available at run time.
|
(__gnat_set_globals): Pass and update the detect_blocking parameter.
|
(__gnat_set_globals): Pass and update the detect_blocking parameter.
|
|
|
* lib-writ.adb (Write_ALI): Set the DB flag in the ali file if
|
* lib-writ.adb (Write_ALI): Set the DB flag in the ali file if
|
pragma Detect_Blocking is active.
|
pragma Detect_Blocking is active.
|
|
|
* lib-writ.ads: Document the Detect_Blocking flag (DB) in ali files.
|
* lib-writ.ads: Document the Detect_Blocking flag (DB) in ali files.
|
|
|
* ali.adb (Scan_ALI): Set the Detect_Blocking value to true if the flag
|
* ali.adb (Scan_ALI): Set the Detect_Blocking value to true if the flag
|
DB is found in the ali file. Any unit compiled with pragma
|
DB is found in the ali file. Any unit compiled with pragma
|
Detect_Blocking active forces its effect in the whole partition.
|
Detect_Blocking active forces its effect in the whole partition.
|
|
|
* a-retide.adb (Delay_Until): Raise Program_Error if pragma
|
* a-retide.adb (Delay_Until): Raise Program_Error if pragma
|
Detect_Blocking is active and delay is called from a protected
|
Detect_Blocking is active and delay is called from a protected
|
operation.
|
operation.
|
|
|
* bindgen.adb (Gen_Adainit_Ada): When generating the call to
|
* bindgen.adb (Gen_Adainit_Ada): When generating the call to
|
__gnat_set_globals, pass 1 as Detect_Blocking parameter if pragma
|
__gnat_set_globals, pass 1 as Detect_Blocking parameter if pragma
|
Detect_Blocking is active (0 otherwise).
|
Detect_Blocking is active (0 otherwise).
|
(Gen_Adainit_C): When generating the call to __gnat_set_globals, pass 1
|
(Gen_Adainit_C): When generating the call to __gnat_set_globals, pass 1
|
as Detect_Blocking parameter if pragma Detect_Blocking is active (0
|
as Detect_Blocking parameter if pragma Detect_Blocking is active (0
|
otherwise).
|
otherwise).
|
|
|
2004-09-09 Thomas Quinot
|
2004-09-09 Thomas Quinot
|
|
|
* gnat_rm.texi: Rename GNAT.Perfect_Hash.Generators to
|
* gnat_rm.texi: Rename GNAT.Perfect_Hash.Generators to
|
GNAT.Perfect_Hash_Generators, and remove the empty GNAT.Perfect_Hash
|
GNAT.Perfect_Hash_Generators, and remove the empty GNAT.Perfect_Hash
|
package.
|
package.
|
|
|
* s-parint.ads, s-parint.adb (Get_RAS_Info): New subprogram.
|
* s-parint.ads, s-parint.adb (Get_RAS_Info): New subprogram.
|
(Register_Receiving_Stub): Add Subp_Info formal parameter.
|
(Register_Receiving_Stub): Add Subp_Info formal parameter.
|
Update API in placeholder implemetation of s-parint to reflect changes
|
Update API in placeholder implemetation of s-parint to reflect changes
|
in distribution runtime library.
|
in distribution runtime library.
|
|
|
* sem_ch3.adb (Expand_Derived_Record): Rename to
|
* sem_ch3.adb (Expand_Derived_Record): Rename to
|
Expand_Record_Extension.
|
Expand_Record_Extension.
|
|
|
* sem_disp.adb (Check_Controlling_Formals): Improve error message for
|
* sem_disp.adb (Check_Controlling_Formals): Improve error message for
|
primitive operations of potentially distributed object types that have
|
primitive operations of potentially distributed object types that have
|
non-controlling anonymous access formals.
|
non-controlling anonymous access formals.
|
|
|
* sem_dist.ads, sem_dist.adb (Build_RAS_Primitive_Specification): New
|
* sem_dist.ads, sem_dist.adb (Build_RAS_Primitive_Specification): New
|
subprogram.
|
subprogram.
|
New implementation of expansion for remote access-to-subprogram types,
|
New implementation of expansion for remote access-to-subprogram types,
|
based on the RACW infrastructure.
|
based on the RACW infrastructure.
|
This version of sem_dist is compatible with PolyORB/DSA as well as
|
This version of sem_dist is compatible with PolyORB/DSA as well as
|
GLADE.
|
GLADE.
|
|
|
* sem_prag.adb (Analyze_Pragma, case Pragma_Asynchronous): For a pragma
|
* sem_prag.adb (Analyze_Pragma, case Pragma_Asynchronous): For a pragma
|
Asynchrronous that applies to a remote access-to-subprogram type, mark
|
Asynchrronous that applies to a remote access-to-subprogram type, mark
|
the underlying RACW type as asynchronous.
|
the underlying RACW type as asynchronous.
|
|
|
* link.c: FreeBSD uses GNU ld: set __gnat_objlist_file_supported and
|
* link.c: FreeBSD uses GNU ld: set __gnat_objlist_file_supported and
|
__gnat_using_gnu_linker to 1.
|
__gnat_using_gnu_linker to 1.
|
|
|
* Makefile.rtl, impunit.adb, g-perhas.ads, g-pehage.ads,
|
* Makefile.rtl, impunit.adb, g-perhas.ads, g-pehage.ads,
|
g-pehage.adb: Rename GNAT.Perfect_Hash.Generators to
|
g-pehage.adb: Rename GNAT.Perfect_Hash.Generators to
|
GNAT.Perfect_Hash_Generators, and remove the empty
|
GNAT.Perfect_Hash_Generators, and remove the empty
|
GNAT.Perfect_Hash package.
|
GNAT.Perfect_Hash package.
|
|
|
* atree.adb: Minor reformatting
|
* atree.adb: Minor reformatting
|
|
|
* exp_ch3.adb (Expand_Derived_Record): Rename to
|
* exp_ch3.adb (Expand_Derived_Record): Rename to
|
Expand_Record_Extension.
|
Expand_Record_Extension.
|
(Build_Record_Init_Proc.Build_Assignment): The default expression in
|
(Build_Record_Init_Proc.Build_Assignment): The default expression in
|
a component declaration must remain attached at that point in the
|
a component declaration must remain attached at that point in the
|
tree so New_Copy_Tree copies it if the enclosing record type is derived.
|
tree so New_Copy_Tree copies it if the enclosing record type is derived.
|
It is therefore necessary to take a copy of the expression when building
|
It is therefore necessary to take a copy of the expression when building
|
the corresponding assignment statement in the init proc.
|
the corresponding assignment statement in the init proc.
|
As a side effect, in the case of a derived record type, we now see the
|
As a side effect, in the case of a derived record type, we now see the
|
original expression, without any rewriting that could have occurred
|
original expression, without any rewriting that could have occurred
|
during expansion of the ancestor type's init proc, and we do not need
|
during expansion of the ancestor type's init proc, and we do not need
|
to go back to Original_Node.
|
to go back to Original_Node.
|
|
|
* exp_ch3.ads (Expand_Derived_Record): Rename to
|
* exp_ch3.ads (Expand_Derived_Record): Rename to
|
Expand_Record_Extension.
|
Expand_Record_Extension.
|
|
|
* exp_dist.ads, exp_dist.adb (Underlying_RACW_Type): New subprogram.
|
* exp_dist.ads, exp_dist.adb (Underlying_RACW_Type): New subprogram.
|
Returns the RACW type used to implement a remote access-to-subprogram
|
Returns the RACW type used to implement a remote access-to-subprogram
|
type.
|
type.
|
(Add_RAS_Proxy_And_Analyze, Build_Remote_Subprogram_Proxy_Type):
|
(Add_RAS_Proxy_And_Analyze, Build_Remote_Subprogram_Proxy_Type):
|
New subprograms. Used to create a proxy tagged object for a remote
|
New subprograms. Used to create a proxy tagged object for a remote
|
subprogram. The proxy object is used as the designated object
|
subprogram. The proxy object is used as the designated object
|
for RAS values on the same partition (unless All_Calls_Remote applies).
|
for RAS values on the same partition (unless All_Calls_Remote applies).
|
(Build_Get_Unique_RP_Call): New subprogram. Build a call to
|
(Build_Get_Unique_RP_Call): New subprogram. Build a call to
|
System.Partition_Interface.Get_Unique_Remote_Pointer.
|
System.Partition_Interface.Get_Unique_Remote_Pointer.
|
(Add_RAS_Access_TSS, Add_RAS_Dereference_TSS):
|
(Add_RAS_Access_TSS, Add_RAS_Dereference_TSS):
|
Renamed from Add_RAS_*_Attribute.
|
Renamed from Add_RAS_*_Attribute.
|
(Add_Receiving_Stubs_To_Declarations): Generate a table of local
|
(Add_Receiving_Stubs_To_Declarations): Generate a table of local
|
subprograms.
|
subprograms.
|
New implementation of expansion for remote access-to-subprogram types,
|
New implementation of expansion for remote access-to-subprogram types,
|
based on the RACW infrastructure.
|
based on the RACW infrastructure.
|
|
|
* exp_dist.ads (Copy_Specification): Update comment to note that this
|
* exp_dist.ads (Copy_Specification): Update comment to note that this
|
function can copy the specification from either a subprogram
|
function can copy the specification from either a subprogram
|
specification or an access-to-subprogram type definition.
|
specification or an access-to-subprogram type definition.
|
|
|
2004-09-09 Ed Schonberg
|
2004-09-09 Ed Schonberg
|
|
|
* sem_type.adb (Disambiguate): Handle properly an accidental ambiguity
|
* sem_type.adb (Disambiguate): Handle properly an accidental ambiguity
|
in an instance, between an explicit subprogram an one inherited from a
|
in an instance, between an explicit subprogram an one inherited from a
|
type derived from an actual.
|
type derived from an actual.
|
|
|
* exp_ch6.adb (Expand_N_Subprogram_Body): If polling is enabled, do not
|
* exp_ch6.adb (Expand_N_Subprogram_Body): If polling is enabled, do not
|
add a polling call if the subprogram is to be inlined by the back-end,
|
add a polling call if the subprogram is to be inlined by the back-end,
|
to avoid repeated calls with multiple inlinings.
|
to avoid repeated calls with multiple inlinings.
|
|
|
* checks.adb (Apply_Alignment_Check): If the expression in the address
|
* checks.adb (Apply_Alignment_Check): If the expression in the address
|
clause is a call whose name is not a static entity (e.g. a dispatching
|
clause is a call whose name is not a static entity (e.g. a dispatching
|
call), treat as dynamic.
|
call), treat as dynamic.
|
|
|
2004-09-09 Robert Dewar
|
2004-09-09 Robert Dewar
|
|
|
* g-trasym.ads: Minor reformatting
|
* g-trasym.ads: Minor reformatting
|
|
|
* exp_ch3.adb (Component_Needs_Simple_Initialization): Don't except
|
* exp_ch3.adb (Component_Needs_Simple_Initialization): Don't except
|
packed arrays, since unused bits are expected to be zero for a
|
packed arrays, since unused bits are expected to be zero for a
|
comparison.
|
comparison.
|
|
|
2004-09-09 Eric Botcazou
|
2004-09-09 Eric Botcazou
|
|
|
* exp_pakd.ads: Fix an inacurracy and a couple of typos in the head
|
* exp_pakd.ads: Fix an inacurracy and a couple of typos in the head
|
comment.
|
comment.
|
|
|
2004-09-09 Pascal Obry
|
2004-09-09 Pascal Obry
|
|
|
* mdll.ads, mdll.adb (Build_Dynamic_Library): New parameter Map_File to
|
* mdll.ads, mdll.adb (Build_Dynamic_Library): New parameter Map_File to
|
enable map file generation. Add the right option to generate the map
|
enable map file generation. Add the right option to generate the map
|
file if Map_File is set to True.
|
file if Map_File is set to True.
|
|
|
* gnatdll.adb (Gen_Map_File): New variable.
|
* gnatdll.adb (Gen_Map_File): New variable.
|
(Syntax): Add info about new -m (Map_File) option.
|
(Syntax): Add info about new -m (Map_File) option.
|
(Parse_Command_Line): Add support for -m option.
|
(Parse_Command_Line): Add support for -m option.
|
(gnatdll): Pass Gen_Map_File to Build_Dynamic_Library calls.
|
(gnatdll): Pass Gen_Map_File to Build_Dynamic_Library calls.
|
Minor reformatting.
|
Minor reformatting.
|
|
|
2004-09-09 Laurent Pautet
|
2004-09-09 Laurent Pautet
|
|
|
* gnatls.adb: Add a very verbose mode -V. Such mode is required by the
|
* gnatls.adb: Add a very verbose mode -V. Such mode is required by the
|
new gnatdist implementation.
|
new gnatdist implementation.
|
Define a subpackage isolating the output routines specific to this
|
Define a subpackage isolating the output routines specific to this
|
verbose mode.
|
verbose mode.
|
|
|
2004-09-09 Joel Brobecker
|
2004-09-09 Joel Brobecker
|
|
|
* Makefile.rtl: (GNATRTL_NONTASKING_OBJS): Add g-dynhta.
|
* Makefile.rtl: (GNATRTL_NONTASKING_OBJS): Add g-dynhta.
|
|
|
* gnat_ugn.texi (Main Subprograms): Fix typo. Deduced, not deducted.
|
* gnat_ugn.texi (Main Subprograms): Fix typo. Deduced, not deducted.
|
|
|
2004-09-09 Cyrille Comar
|
2004-09-09 Cyrille Comar
|
|
|
* opt.adb (Set_Opt_Config_Switches): Use Ada_Version_Runtime to compile
|
* opt.adb (Set_Opt_Config_Switches): Use Ada_Version_Runtime to compile
|
internal unit.
|
internal unit.
|
|
|
* opt.ads: Add Ada_Version_Runtime constant used to decide which
|
* opt.ads: Add Ada_Version_Runtime constant used to decide which
|
version of the language is used to compile the run time.
|
version of the language is used to compile the run time.
|
|
|
2004-09-09 Arnaud Charlet
|
2004-09-09 Arnaud Charlet
|
|
|
* sem_util.adb (Requires_Transient_Scope): Re-enable handling
|
* sem_util.adb (Requires_Transient_Scope): Re-enable handling
|
of variable length temporaries for function return now that the
|
of variable length temporaries for function return now that the
|
back-end and gigi support it.
|
back-end and gigi support it.
|
|
|
2004-09-01 Richard Kenner
|
2004-09-01 Richard Kenner
|
|
|
* misc.c (gnat_print_type): Use TYPE_RM_SIZE_NUM.
|
* misc.c (gnat_print_type): Use TYPE_RM_SIZE_NUM.
|
|
|
* trans.c (struct stmt_group): Delete field GLOBAL.
|
* trans.c (struct stmt_group): Delete field GLOBAL.
|
(gnat_init_stmt_group): Do not initialize it.
|
(gnat_init_stmt_group): Do not initialize it.
|
(call_to_gnu): Use save_expr, not protect_multiple_eval.
|
(call_to_gnu): Use save_expr, not protect_multiple_eval.
|
(Exception_Handler_to_gnu_sjlj): Call build_int_cst, not build_int_2
|
(Exception_Handler_to_gnu_sjlj): Call build_int_cst, not build_int_2
|
(gnat_to_gnu, case N_Character_Literal, N_String_Literal): Likewise.
|
(gnat_to_gnu, case N_Character_Literal, N_String_Literal): Likewise.
|
(gnat_to_gnu, case N_Compilation_Unit): Do not set GLOBAL in stmt group.
|
(gnat_to_gnu, case N_Compilation_Unit): Do not set GLOBAL in stmt group.
|
(start_stmt_group): Likewise.
|
(start_stmt_group): Likewise.
|
(add_stmt, add_decl_expr): Rework handling of global DECL_EXPRs.
|
(add_stmt, add_decl_expr): Rework handling of global DECL_EXPRs.
|
|
|
* utils2.c (ggc.h): Include.
|
* utils2.c (ggc.h): Include.
|
(build_call_raise): Call build_int_cst, not build_int_2.
|
(build_call_raise): Call build_int_cst, not build_int_2.
|
|
|
* utils.c (gnat_init_decl_processing): Fix arg to
|
* utils.c (gnat_init_decl_processing): Fix arg to
|
build_common_tree_nodes.
|
build_common_tree_nodes.
|
(create_subprog_type): Do not use SET_TYPE_CI_CO_LIST.
|
(create_subprog_type): Do not use SET_TYPE_CI_CO_LIST.
|
(gnat_define_builtin): Set built_in_decls.
|
(gnat_define_builtin): Set built_in_decls.
|
(init_gigi_decls): Call build_int_cst, not build_int_2.
|
(init_gigi_decls): Call build_int_cst, not build_int_2.
|
|
|
* ada-tree.h (struct lang_decl, struct lang_type): Field is type tree.
|
* ada-tree.h (struct lang_decl, struct lang_type): Field is type tree.
|
(GET_TYPE_LANG_SPECIFIC, SET_TYPE_LANG_SPECIFIC): New macros.
|
(GET_TYPE_LANG_SPECIFIC, SET_TYPE_LANG_SPECIFIC): New macros.
|
(GET_DECL_LANG_SPECIFIC, SET_DECL_LANG_SPECIFIC): Likewise.
|
(GET_DECL_LANG_SPECIFIC, SET_DECL_LANG_SPECIFIC): Likewise.
|
(TYPE_CI_CO_LIST, SET_TYPE_CI_CO_LIST, TYPE_MODULE,
|
(TYPE_CI_CO_LIST, SET_TYPE_CI_CO_LIST, TYPE_MODULE,
|
SET_TYPE_MODULE): Use them.
|
SET_TYPE_MODULE): Use them.
|
(TYPE_INDEX_TYPE, SET_TYPE_INDEX_TYPE, TYPE_DIGITS_VALUE): Likewise.
|
(TYPE_INDEX_TYPE, SET_TYPE_INDEX_TYPE, TYPE_DIGITS_VALUE): Likewise.
|
(SET_TYPE_DIGITS_VALUE, TYPE_UNCONSTRAINED_ARRAY): Likewise.
|
(SET_TYPE_DIGITS_VALUE, TYPE_UNCONSTRAINED_ARRAY): Likewise.
|
(SET_TYPE_UNCONSTRAINED_ARRAY, TYPE_ADA_SIZE,
|
(SET_TYPE_UNCONSTRAINED_ARRAY, TYPE_ADA_SIZE,
|
SET_TYPE_ADA_SIZE): Likewise.
|
SET_TYPE_ADA_SIZE): Likewise.
|
(TYPE_ACTUAL_BOUNDS, SET_TYPE_ACTUAL_BOUNDS): Likewise.
|
(TYPE_ACTUAL_BOUNDS, SET_TYPE_ACTUAL_BOUNDS): Likewise.
|
(DECL_CONST_CORRESPONDING_VAR,
|
(DECL_CONST_CORRESPONDING_VAR,
|
SET_DECL_CONST_CORRESPONDING_VAR): Likewise.
|
SET_DECL_CONST_CORRESPONDING_VAR): Likewise.
|
(DECL_ORIGINAL_FIELD, SET_DECL_ORIGINAL_FIELD): Likewise.
|
(DECL_ORIGINAL_FIELD, SET_DECL_ORIGINAL_FIELD): Likewise.
|
(TYPE_RM_SIZE_INT, TYPE_RM_SIZE_ENUM, SET_TYPE_RM_SIZE_ENUM): Deleted.
|
(TYPE_RM_SIZE_INT, TYPE_RM_SIZE_ENUM, SET_TYPE_RM_SIZE_ENUM): Deleted.
|
(TYPE_RM_SIZE_NUM): New macro.
|
(TYPE_RM_SIZE_NUM): New macro.
|
(TYPE_RM_SIZE): Modified to use above.
|
(TYPE_RM_SIZE): Modified to use above.
|
|
|
* cuintp.c: (build_cst_from_int): New function.
|
* cuintp.c: (build_cst_from_int): New function.
|
(UI_To_gnu): Use it.
|
(UI_To_gnu): Use it.
|
|
|
* decl.c (gnat_to_gnu_entity): Use TYPE_RM_SIZE_NUM.
|
* decl.c (gnat_to_gnu_entity): Use TYPE_RM_SIZE_NUM.
|
(make_type_from_size): Avoid changing TYPE_UNSIGNED of a type.
|
(make_type_from_size): Avoid changing TYPE_UNSIGNED of a type.
|
(gnat_substitute_in_type, case ARRAY_TYPE): If old had a
|
(gnat_substitute_in_type, case ARRAY_TYPE): If old had a
|
MIN_EXPR for the size, copy it into new.
|
MIN_EXPR for the size, copy it into new.
|
|
|
2004-09-01 Robert Dewar
|
2004-09-01 Robert Dewar
|
|
|
* exp_ch6.adb (Expand_Call): Properly handle validity checks for
|
* exp_ch6.adb (Expand_Call): Properly handle validity checks for
|
packed indexed component where array is an IN OUT formal. This
|
packed indexed component where array is an IN OUT formal. This
|
generated garbage code previously.
|
generated garbage code previously.
|
|
|
* gnat_ugn.texi: Document -fverbose-asm
|
* gnat_ugn.texi: Document -fverbose-asm
|
|
|
* gnat-style.texi: Minor updates (note that boolean constants and
|
* gnat-style.texi: Minor updates (note that boolean constants and
|
variables are joined with AND/OR rather than short circuit forms).
|
variables are joined with AND/OR rather than short circuit forms).
|
|
|
2004-09-01 Ed Schonberg
|
2004-09-01 Ed Schonberg
|
|
|
* exp_util.adb (Safe_Unchecked_Type_Conversion): Conversion is safe if
|
* exp_util.adb (Safe_Unchecked_Type_Conversion): Conversion is safe if
|
it is an upward conversion of an untagged type with no representation
|
it is an upward conversion of an untagged type with no representation
|
change.
|
change.
|
|
|
2004-09-01 Thomas Quinot
|
2004-09-01 Thomas Quinot
|
|
|
* rtsfind.ads: Move RCI_Subp_Info and RCI_Subp_Info_Array to
|
* rtsfind.ads: Move RCI_Subp_Info and RCI_Subp_Info_Array to
|
System.Partition_Interface.
|
System.Partition_Interface.
|
|
|
* checks.adb (Apply_Access_Checks): Do not generate checks when
|
* checks.adb (Apply_Access_Checks): Do not generate checks when
|
expander is not active (but check for unset reference to prefix of
|
expander is not active (but check for unset reference to prefix of
|
dereference).
|
dereference).
|
|
|
* sem_prag.adb (Analyze_Pragma, case Pragma_Debug): Uniformly rewrite
|
* sem_prag.adb (Analyze_Pragma, case Pragma_Debug): Uniformly rewrite
|
pragma Debug as an if statement with a constant condition, for
|
pragma Debug as an if statement with a constant condition, for
|
consistent treatment of entity references contained within the
|
consistent treatment of entity references contained within the
|
enclosed procedure call.
|
enclosed procedure call.
|
|
|
2004-09-01 Vincent Celier
|
2004-09-01 Vincent Celier
|
|
|
* bindgen.adb: (Set_EA_Last): New procedure
|
* bindgen.adb: (Set_EA_Last): New procedure
|
(Gen_Exception_Table_Ada, Gen_Exception_Table_C): Use new procedure
|
(Gen_Exception_Table_Ada, Gen_Exception_Table_C): Use new procedure
|
Set_EA_Last.
|
Set_EA_Last.
|
(Gen_Adafinal_Ada): If no finalization, adafinal does nothing
|
(Gen_Adafinal_Ada): If no finalization, adafinal does nothing
|
(Gen_Output_File_Ada): Always call Gen_Adafinal_Ada, so that SAL can be
|
(Gen_Output_File_Ada): Always call Gen_Adafinal_Ada, so that SAL can be
|
linked without errors.
|
linked without errors.
|
(Gen_Exception_Table_Ada): Correct bugs when generating code for arrays
|
(Gen_Exception_Table_Ada): Correct bugs when generating code for arrays
|
ST and EA.
|
ST and EA.
|
(Gen_Exception_Table_C): Correct same bugs
|
(Gen_Exception_Table_C): Correct same bugs
|
|
|
* vms_data.ads: Add new qualifier /VERBOSE_ASM to GCC_Switches
|
* vms_data.ads: Add new qualifier /VERBOSE_ASM to GCC_Switches
|
|
|
* g-os_lib.adb (Normalize_Pathname.Get_Directory): When Dir is empty,
|
* g-os_lib.adb (Normalize_Pathname.Get_Directory): When Dir is empty,
|
on Windows, make sure that the drive letter is in upper case.
|
on Windows, make sure that the drive letter is in upper case.
|
|
|
* g-os_lib.ads (Normalize_Pathname): Add a comment to indicate that on
|
* g-os_lib.ads (Normalize_Pathname): Add a comment to indicate that on
|
Windows, when the drive letter is added and Case_Sensitive is True, the
|
Windows, when the drive letter is added and Case_Sensitive is True, the
|
drive letter is forced to upper case.
|
drive letter is forced to upper case.
|
|
|
* mlib-tgt-irix.adb (Build_Dynamic_Library): Transfer all -lxxx options
|
* mlib-tgt-irix.adb (Build_Dynamic_Library): Transfer all -lxxx options
|
to Options_2 for the call to MLib.Utl.Gcc.
|
to Options_2 for the call to MLib.Utl.Gcc.
|
|
|
* bld.adb (Put_Include_Project): Use '/', not '\' on Windows as
|
* bld.adb (Put_Include_Project): Use '/', not '\' on Windows as
|
directory separator when defining BASE_DIR.
|
directory separator when defining BASE_DIR.
|
|
|
2004-09-01 Pascal Obry
|
2004-09-01 Pascal Obry
|
|
|
* gprcmd.adb (Extend): Do not output trailing directory separator. This
|
* gprcmd.adb (Extend): Do not output trailing directory separator. This
|
is not needed and it confuses Windows GNU/make which does not report
|
is not needed and it confuses Windows GNU/make which does not report
|
directory terminated by a slash as a directory.
|
directory terminated by a slash as a directory.
|
(gprcmd): Idem for "pwd" internal command.
|
(gprcmd): Idem for "pwd" internal command.
|
|
|
* Makefile.generic: Use __GPRCOLON__ instead of pipe character in
|
* Makefile.generic: Use __GPRCOLON__ instead of pipe character in
|
target names rewrite to fix regressions with recent version of
|
target names rewrite to fix regressions with recent version of
|
GNU/make. Starting with GNU/make 3.80 the pipe character was not
|
GNU/make. Starting with GNU/make 3.80 the pipe character was not
|
handled properly anymore.
|
handled properly anymore.
|
|
|
2004-09-01 Andreas Schwab
|
2004-09-01 Andreas Schwab
|
|
|
* Make-lang.in (EXTRA_GNATBIND_OBJS): Revert last change.
|
* Make-lang.in (EXTRA_GNATBIND_OBJS): Revert last change.
|
* raise.c [!IN_RTS]: Undef abort.
|
* raise.c [!IN_RTS]: Undef abort.
|
|
|
2004-08-27 Nathan Sidwell
|
2004-08-27 Nathan Sidwell
|
|
|
* utils2.c (build_allocator): Use ssize_int.
|
* utils2.c (build_allocator): Use ssize_int.
|
|
|
* utils.c (gnat_init_decl_processing): Ada has a signed sizetype.
|
* utils.c (gnat_init_decl_processing): Ada has a signed sizetype.
|
|
|
2004-08-27 Andreas Schwab
|
2004-08-27 Andreas Schwab
|
|
|
* Make-lang.in (EXTRA_GNATBIND_OBJS): Add errors.o.
|
* Make-lang.in (EXTRA_GNATBIND_OBJS): Add errors.o.
|
|
|
2004-08-25 Nathan Sidwell
|
2004-08-25 Nathan Sidwell
|
Richard Kenner
|
Richard Kenner
|
|
|
* ada-tree.h (TYPE_RM_SIZE_INT): Use TYPE_LANG_SLOT_1.
|
* ada-tree.h (TYPE_RM_SIZE_INT): Use TYPE_LANG_SLOT_1.
|
|
|
2004-08-25 Nathan Sidwell
|
2004-08-25 Nathan Sidwell
|
|
|
* cuintp.c (UI_To_gnu): Adjust build_int_cst calls.
|
* cuintp.c (UI_To_gnu): Adjust build_int_cst calls.
|
* trans.c (Exception_Handler_to_gnu_sjlj, gnat_to_gnu): Likewise.
|
* trans.c (Exception_Handler_to_gnu_sjlj, gnat_to_gnu): Likewise.
|
* utils.c (init_gigi_decls): Likewise.
|
* utils.c (init_gigi_decls): Likewise.
|
* utils2.c (build_call_raise, build_allocator): Likewise.
|
* utils2.c (build_call_raise, build_allocator): Likewise.
|
|
|
2004-08-24 Nathan Sidwell
|
2004-08-24 Nathan Sidwell
|
|
|
* utils.c (gnat_init_decl_processing): Adjust
|
* utils.c (gnat_init_decl_processing): Adjust
|
build_common_tree_nodes call.
|
build_common_tree_nodes call.
|
|
|
2004-08-20 Nathan Sidwell
|
2004-08-20 Nathan Sidwell
|
|
|
* utils2.c (build_allocator): Use build_int_cst for negative
|
* utils2.c (build_allocator): Use build_int_cst for negative
|
size types.
|
size types.
|
|
|
2004-08-18 Richard Henderson
|
2004-08-18 Richard Henderson
|
|
|
* misc.c (LANG_HOOKS_HONOR_READONLY): Remove.
|
* misc.c (LANG_HOOKS_HONOR_READONLY): Remove.
|
|
|
2004-08-16 Nathan Sidwell
|
2004-08-16 Nathan Sidwell
|
|
|
* cuintp.c (UI_To_gnu): Be more conservative with build_int_cst
|
* cuintp.c (UI_To_gnu): Be more conservative with build_int_cst
|
call.s
|
call.s
|
* trans.c (Exception_Handler_to_gnu_sjlj): Likewise.
|
* trans.c (Exception_Handler_to_gnu_sjlj): Likewise.
|
(gnat_to_gnu): Likewise.
|
(gnat_to_gnu): Likewise.
|
|
|
2004-08-16 Pascal Obry
|
2004-08-16 Pascal Obry
|
|
|
* adaint.c (__gnat_prj_add_obj_files): Set to 0 only on Win32 for GCC
|
* adaint.c (__gnat_prj_add_obj_files): Set to 0 only on Win32 for GCC
|
backend prior to GCC 3.4. With GCC 3.4 we are using the GCC's shared
|
backend prior to GCC 3.4. With GCC 3.4 we are using the GCC's shared
|
option and not mdll anymore. Update comment.
|
option and not mdll anymore. Update comment.
|
|
|
2004-08-16 Pascal Obry
|
2004-08-16 Pascal Obry
|
|
|
* bld.adb (Put_Include_Project): Properly handle directory separators
|
* bld.adb (Put_Include_Project): Properly handle directory separators
|
on Windows.
|
on Windows.
|
|
|
2004-08-16 Ed Schonberg
|
2004-08-16 Ed Schonberg
|
|
|
* sem_ch4.adb (Try_Object_Operation): Restructure code. Optimize by
|
* sem_ch4.adb (Try_Object_Operation): Restructure code. Optimize by
|
decreasing the number of allocated junk nodes while searching for the
|
decreasing the number of allocated junk nodes while searching for the
|
appropriate subprogram.
|
appropriate subprogram.
|
|
|
2004-08-15 Nathan Sidwell
|
2004-08-15 Nathan Sidwell
|
|
|
* cuintp.c (UI_To_gnu): Use build_int_cst..
|
* cuintp.c (UI_To_gnu): Use build_int_cst..
|
* trans.c (Exception_Handler_to_gnu_sjlj, gnat_to_gnu): Likewise.
|
* trans.c (Exception_Handler_to_gnu_sjlj, gnat_to_gnu): Likewise.
|
* utils.c (init_gigi_decls): Likewise.
|
* utils.c (init_gigi_decls): Likewise.
|
* utils2.c (build_call_raise): Likewise.
|
* utils2.c (build_call_raise): Likewise.
|
|
|
2004-08-13 Olivier Hainque
|
2004-08-13 Olivier Hainque
|
|
|
* decl.c (gnat_to_gnu_entity) : When building an allocator
|
* decl.c (gnat_to_gnu_entity) : When building an allocator
|
for a global aliased object with a variable size and an unconstrained
|
for a global aliased object with a variable size and an unconstrained
|
nominal subtype, pretend there is no initializer if the one we have is
|
nominal subtype, pretend there is no initializer if the one we have is
|
incomplete, and avoid referencing an inexistant component in there. The
|
incomplete, and avoid referencing an inexistant component in there. The
|
part we have will be rebuilt anyway and the reference may confuse
|
part we have will be rebuilt anyway and the reference may confuse
|
further operations.
|
further operations.
|
|
|
2004-08-13 Thomas Quinot
|
2004-08-13 Thomas Quinot
|
|
|
* einfo.ads: Minor reformatting
|
* einfo.ads: Minor reformatting
|
|
|
* lib-writ.adb (Output_Main_Program_Line): Do not set parameter
|
* lib-writ.adb (Output_Main_Program_Line): Do not set parameter
|
restrictions in the ALI if we only want to warn about violations.
|
restrictions in the ALI if we only want to warn about violations.
|
|
|
2004-08-13 Vincent Celier
|
2004-08-13 Vincent Celier
|
|
|
* ali.adb (Scan_ALI): Initialize component Body_Needed_For_SAL to False
|
* ali.adb (Scan_ALI): Initialize component Body_Needed_For_SAL to False
|
when creating a new Unit_Record in table Units.
|
when creating a new Unit_Record in table Units.
|
|
|
* gnatls.adb (Output_Unit): In verbose mode, output the restrictions
|
* gnatls.adb (Output_Unit): In verbose mode, output the restrictions
|
that are violated, if any.
|
that are violated, if any.
|
|
|
* prj-nmsc.adb (Ada_Check.Get_Path_Names_And_Record_Sources): Do not
|
* prj-nmsc.adb (Ada_Check.Get_Path_Names_And_Record_Sources): Do not
|
add directory separator if path already ends with a directory separator.
|
add directory separator if path already ends with a directory separator.
|
|
|
2004-08-13 Ed Schonberg
|
2004-08-13 Ed Schonberg
|
|
|
* rtsfind.adb (Entity_Not_Defined): If the error ocurrs in a predefined
|
* rtsfind.adb (Entity_Not_Defined): If the error ocurrs in a predefined
|
unit, this is an attempt to inline a construct that is not available in
|
unit, this is an attempt to inline a construct that is not available in
|
the current restricted mode, so abort rather than trying to continue.
|
the current restricted mode, so abort rather than trying to continue.
|
|
|
* sem_ch3.adb (Build_Underlying_Full_View): If the new type has
|
* sem_ch3.adb (Build_Underlying_Full_View): If the new type has
|
discriminants that rename those of the parent, recover names of
|
discriminants that rename those of the parent, recover names of
|
original discriminants for the constraint on the full view of the
|
original discriminants for the constraint on the full view of the
|
parent.
|
parent.
|
(Complete_Private_Subtype): Do not create a subtype declaration if the
|
(Complete_Private_Subtype): Do not create a subtype declaration if the
|
subtype is an itype.
|
subtype is an itype.
|
|
|
* gnat_rm.texi: Added section on implementation of discriminated
|
* gnat_rm.texi: Added section on implementation of discriminated
|
records with default values for discriminants.
|
records with default values for discriminants.
|
|
|
2004-08-13 Ed Schonberg
|
2004-08-13 Ed Schonberg
|
|
|
PR ada/15601
|
PR ada/15601
|
* sem_res.adb (Make_Call_Into_Operator): Handle properly the case where
|
* sem_res.adb (Make_Call_Into_Operator): Handle properly the case where
|
the second operand is overloaded.
|
the second operand is overloaded.
|
|
|
2004-08-10 Richard Henderson
|
2004-08-10 Richard Henderson
|
|
|
* utils.c (gnat_install_builtins): Remove __builtin_stack_alloc,
|
* utils.c (gnat_install_builtins): Remove __builtin_stack_alloc,
|
add __builtin_alloca.
|
add __builtin_alloca.
|
|
|
2004-08-10 Richard Henderson
|
2004-08-10 Richard Henderson
|
|
|
* config-lang.in (boot_language): Yes.
|
* config-lang.in (boot_language): Yes.
|
|
|
2004-08-09 Thomas Quinot
|
2004-08-09 Thomas Quinot
|
|
|
* g-socket.adb (Abort_Selector): Initialize Buf to prevent valgrind
|
* g-socket.adb (Abort_Selector): Initialize Buf to prevent valgrind
|
from complaining on potential uninitialized reference.
|
from complaining on potential uninitialized reference.
|
Change calls to GNAT.Sockets.Thin.Is_Socket_In_Set to account for
|
Change calls to GNAT.Sockets.Thin.Is_Socket_In_Set to account for
|
new specification and test explicitly for non-zero return value.
|
new specification and test explicitly for non-zero return value.
|
|
|
* g-socthi.ads (Is_Socket_In_Set): Declare imported function as
|
* g-socthi.ads (Is_Socket_In_Set): Declare imported function as
|
returning C.int, to avoid using a derived boolean type.
|
returning C.int, to avoid using a derived boolean type.
|
|
|
* exp_ch5.adb (Make_Tag_Ctrl_Assignments): Use
|
* exp_ch5.adb (Make_Tag_Ctrl_Assignments): Use
|
Duplicate_Subexpr_No_Checks in preference to direct use of
|
Duplicate_Subexpr_No_Checks in preference to direct use of
|
Remove_Side_Effects and New_Copy_Tree.
|
Remove_Side_Effects and New_Copy_Tree.
|
Clear Comes_From_Source on prefix of 'Size attribute reference.
|
Clear Comes_From_Source on prefix of 'Size attribute reference.
|
|
|
* g-socthi.adb, g-socthi-vms.adb, g-socthi-mingw.adb,
|
* g-socthi.adb, g-socthi-vms.adb, g-socthi-mingw.adb,
|
g-socthi-vxworks.adb: Change calls to
|
g-socthi-vxworks.adb: Change calls to
|
GNAT.Sockets.Thin.Is_Socket_In_Set to account for new specification
|
GNAT.Sockets.Thin.Is_Socket_In_Set to account for new specification
|
and test explicitly for non-zero return value.
|
and test explicitly for non-zero return value.
|
|
|
* g-socthi-vms.ads, g-socthi-mingw.ads, g-socthi-vxworks.ads:
|
* g-socthi-vms.ads, g-socthi-mingw.ads, g-socthi-vxworks.ads:
|
(Is_Socket_In_Set): Declare imported function as returning C.int, to
|
(Is_Socket_In_Set): Declare imported function as returning C.int, to
|
avoid using a derived boolean type.
|
avoid using a derived boolean type.
|
|
|
2004-08-09 Albert Lee
|
2004-08-09 Albert Lee
|
|
|
* system-irix-n32.ads: Refine tasking priority constants for IRIX.
|
* system-irix-n32.ads: Refine tasking priority constants for IRIX.
|
|
|
2004-08-09 Pascal Obry
|
2004-08-09 Pascal Obry
|
|
|
* gnat_ugn.texi: Document new way to build DLLs on Windows using
|
* gnat_ugn.texi: Document new way to build DLLs on Windows using
|
GCC's -shared option.
|
GCC's -shared option.
|
|
|
* mlib-tgt-mingw.adb (Build_Dynamic_Library): Pass GCC's options into
|
* mlib-tgt-mingw.adb (Build_Dynamic_Library): Pass GCC's options into
|
Options_2 parameter (options put after object files).
|
Options_2 parameter (options put after object files).
|
|
|
2004-08-09 Olivier Hainque
|
2004-08-09 Olivier Hainque
|
|
|
* decl.c (gnat_to_gnu_entity) : Adjust condition to
|
* decl.c (gnat_to_gnu_entity) : Adjust condition to
|
ignore overflows on low and high bounds of an index to also account for
|
ignore overflows on low and high bounds of an index to also account for
|
differences in signedness between sizetype and gnu_index_subtype.
|
differences in signedness between sizetype and gnu_index_subtype.
|
These are as legitimate as the ones caused by a lower TYPE_PRECISION
|
These are as legitimate as the ones caused by a lower TYPE_PRECISION
|
on sizetype.
|
on sizetype.
|
|
|
2004-08-09 Robert Dewar
|
2004-08-09 Robert Dewar
|
|
|
* s-solita.ads, s-solita.adb: Minor reformatting
|
* s-solita.ads, s-solita.adb: Minor reformatting
|
|
|
* gnat_rm.texi: Add documentation for pragma Profile (Restricted)
|
* gnat_rm.texi: Add documentation for pragma Profile (Restricted)
|
Move pragma Restricted_Run_Time, No_Run_Time, Ravenscar to new
|
Move pragma Restricted_Run_Time, No_Run_Time, Ravenscar to new
|
obsolescent section
|
obsolescent section
|
Add note that No_Implicit_Conditionals does not suppress
|
Add note that No_Implicit_Conditionals does not suppress
|
run time constraint checks.
|
run time constraint checks.
|
|
|
* vms_conv.ads: Minor reformatting
|
* vms_conv.ads: Minor reformatting
|
|
|
* s-secsta.adb: Use SS_Ptr instead of Mark_Id as stack pointer (cleanup
|
* s-secsta.adb: Use SS_Ptr instead of Mark_Id as stack pointer (cleanup
|
and necessary for following change).
|
and necessary for following change).
|
(Mark): Return new format Mark_Id containing sec stack address
|
(Mark): Return new format Mark_Id containing sec stack address
|
(Release): Use sec stack address from Mark_Id avoiding Self call
|
(Release): Use sec stack address from Mark_Id avoiding Self call
|
|
|
* s-secsta.ads: Define SS_Ptr to be used instead of Mark_Id as stack
|
* s-secsta.ads: Define SS_Ptr to be used instead of Mark_Id as stack
|
pointer (cleanup and necessary for following change).
|
pointer (cleanup and necessary for following change).
|
Define Mark_Id as record containing address of secondary stack, that way
|
Define Mark_Id as record containing address of secondary stack, that way
|
Release does not need to find the stack again, decreasing the number of
|
Release does not need to find the stack again, decreasing the number of
|
calls to Self and improving efficiency.
|
calls to Self and improving efficiency.
|
|
|
* sem_util.ads: Add a ??? comment for Is_Local_Variable_Reference
|
* sem_util.ads: Add a ??? comment for Is_Local_Variable_Reference
|
|
|
* sem_ch5.adb (Analyze_Case_Statement): Add circuitry to track value of
|
* sem_ch5.adb (Analyze_Case_Statement): Add circuitry to track value of
|
case variable into the individual case branches when possible.
|
case variable into the individual case branches when possible.
|
|
|
* sem_ch11.adb: Minor reformatting
|
* sem_ch11.adb: Minor reformatting
|
|
|
* prj.ads: Correct spelling of suffixs
|
* prj.ads: Correct spelling of suffixs
|
|
|
* prj-nmsc.adb: Minor reformatting
|
* prj-nmsc.adb: Minor reformatting
|
Correct spelling suffixs throughout (also in identifiers)
|
Correct spelling suffixs throughout (also in identifiers)
|
|
|
* freeze.adb: Minor spelling correction
|
* freeze.adb: Minor spelling correction
|
|
|
* exp_ch2.adb: Cleanups to handling of Current_Value
|
* exp_ch2.adb: Cleanups to handling of Current_Value
|
(no functional effect).
|
(no functional effect).
|
|
|
* bld.adb: Correct spelling of suffixs
|
* bld.adb: Correct spelling of suffixs
|
|
|
* einfo.adb (Enclosing_Dynamic_Scope): Defend against junk argument
|
* einfo.adb (Enclosing_Dynamic_Scope): Defend against junk argument
|
|
|
2004-08-09 Ed Schonberg
|
2004-08-09 Ed Schonberg
|
|
|
PR ada/15408
|
PR ada/15408
|
* sem_ch7.adb (Install_Private_Declarations): In the body of the
|
* sem_ch7.adb (Install_Private_Declarations): In the body of the
|
package or of a child, private entities are both immediately_visible
|
package or of a child, private entities are both immediately_visible
|
and not hidden.
|
and not hidden.
|
|
|
2004-08-09 Ed Schonberg
|
2004-08-09 Ed Schonberg
|
|
|
* sem_eval.adb (Eval_Integer_Literal): If the context is Any_Integer,
|
* sem_eval.adb (Eval_Integer_Literal): If the context is Any_Integer,
|
there are no range checks on the value of the literal.
|
there are no range checks on the value of the literal.
|
|
|
* exp_ch7.adb (Insert_Actions_In_Scope_Around): If the node being
|
* exp_ch7.adb (Insert_Actions_In_Scope_Around): If the node being
|
wrapped is the triggering alternative of an asynchronous select, action
|
wrapped is the triggering alternative of an asynchronous select, action
|
statements mustbe inserted before the select itself.
|
statements mustbe inserted before the select itself.
|
|
|
* sem_attr.adb (Analyze_Attribute, case 'Size): Handle properly the
|
* sem_attr.adb (Analyze_Attribute, case 'Size): Handle properly the
|
case where the prefix is a protected function call.
|
case where the prefix is a protected function call.
|
(Resolve_Attribute, case 'Access): The attribute reference on a
|
(Resolve_Attribute, case 'Access): The attribute reference on a
|
subprogram is legal in a generic body if the subprogram is declared
|
subprogram is legal in a generic body if the subprogram is declared
|
elsewhere.
|
elsewhere.
|
|
|
2004-08-09 Vincent Celier
|
2004-08-09 Vincent Celier
|
|
|
* makegpr.adb (Build_Library): Link with g++ if C++ is one of the
|
* makegpr.adb (Build_Library): Link with g++ if C++ is one of the
|
languages, otherwise building the library may fail with unresolved
|
languages, otherwise building the library may fail with unresolved
|
symbols.
|
symbols.
|
(Compile_Sources): Do not build libraries if -c switch is used
|
(Compile_Sources): Do not build libraries if -c switch is used
|
|
|
* gnatlink.adb (Process_Args): New switches -M and -Mmap
|
* gnatlink.adb (Process_Args): New switches -M and -Mmap
|
(Write_Usage): If map file creation is supported, output new switches
|
(Write_Usage): If map file creation is supported, output new switches
|
-M and -Mmap.
|
-M and -Mmap.
|
(Gnatlink): When -M is specified, add the necessary switch(es) to the
|
(Gnatlink): When -M is specified, add the necessary switch(es) to the
|
gcc call, when supported.
|
gcc call, when supported.
|
|
|
* Makefile.in: Added indepsw.o to the object list for gnatlink
|
* Makefile.in: Added indepsw.o to the object list for gnatlink
|
Specified the AIX, GNU/Linux and Windows versions of indepsw.adb
|
Specified the AIX, GNU/Linux and Windows versions of indepsw.adb
|
|
|
* indepsw-aix.adb, indepsw-linux.adb, indepsw-mingw.adb,
|
* indepsw-aix.adb, indepsw-linux.adb, indepsw-mingw.adb,
|
indepsw.adb, indepsw.ads: New files.
|
indepsw.adb, indepsw.ads: New files.
|
|
|
2004-08-09 Bernard Banner
|
2004-08-09 Bernard Banner
|
|
|
* system-vxworks-x86.ads, s-vxwork-x86.ads: New files.
|
* system-vxworks-x86.ads, s-vxwork-x86.ads: New files.
|
|
|
* Makefile.in: add section for vxworks x86
|
* Makefile.in: add section for vxworks x86
|
|
|
2004-08-09 Hristian Kirtchev
|
2004-08-09 Hristian Kirtchev
|
|
|
* exp_ch3.adb (Build_Init_Statements): Add extra condition to deal with
|
* exp_ch3.adb (Build_Init_Statements): Add extra condition to deal with
|
per-object constrained components where the discriminant is of an
|
per-object constrained components where the discriminant is of an
|
Access type.
|
Access type.
|
(Build_Record_Init_Proc): Add condition to prevent the inheritance of
|
(Build_Record_Init_Proc): Add condition to prevent the inheritance of
|
the parent initialization procedure for derived Unchecked_Unions.
|
the parent initialization procedure for derived Unchecked_Unions.
|
Instead, derived Unchecked_Unions build their own initialization
|
Instead, derived Unchecked_Unions build their own initialization
|
procedure.
|
procedure.
|
(Build_Variant_Record_Equality): Implement Unchecked_Union equality.
|
(Build_Variant_Record_Equality): Implement Unchecked_Union equality.
|
Check the body of the subprogram for details.
|
Check the body of the subprogram for details.
|
(Freeze_Record_Type): Prevent the inheritance of discriminant checking
|
(Freeze_Record_Type): Prevent the inheritance of discriminant checking
|
functions for derived Unchecked_Union types by introducing a condition.
|
functions for derived Unchecked_Union types by introducing a condition.
|
Allow the creation of TSS equality functions for Unchecked_Unions.
|
Allow the creation of TSS equality functions for Unchecked_Unions.
|
(Make_Eq_Case): Rename formal parameter Node to E in function signature.
|
(Make_Eq_Case): Rename formal parameter Node to E in function signature.
|
Add formal parameter Discr to function signature. Discr is used to
|
Add formal parameter Discr to function signature. Discr is used to
|
control the generated case statement for Unchecked_Union types.
|
control the generated case statement for Unchecked_Union types.
|
(Make_Eq_If): Rename formal parameter Node to E in function signature.
|
(Make_Eq_If): Rename formal parameter Node to E in function signature.
|
|
|
* exp_ch4.adb (Build_Equality_Call): Implement equality calls for
|
* exp_ch4.adb (Build_Equality_Call): Implement equality calls for
|
Unchecked_Unions.
|
Unchecked_Unions.
|
Check the body of the subprogram for details.
|
Check the body of the subprogram for details.
|
(Expand_Composite_Equality): Augment composite type equality to include
|
(Expand_Composite_Equality): Augment composite type equality to include
|
correct handling of Unchecked_Union components.
|
correct handling of Unchecked_Union components.
|
(Expand_N_In): Add condition to detect illegal membership tests when the
|
(Expand_N_In): Add condition to detect illegal membership tests when the
|
subtype mark is a constrained Unchecked_Union and the expression lacks
|
subtype mark is a constrained Unchecked_Union and the expression lacks
|
inferable discriminants, and build a Raise_Program_Error node.
|
inferable discriminants, and build a Raise_Program_Error node.
|
(Expand_N_Op_Eq): Add function Has_Unconstrained_UU_Component. Used
|
(Expand_N_Op_Eq): Add function Has_Unconstrained_UU_Component. Used
|
to detect types that contain components of unconstrained Unchecked_Union
|
to detect types that contain components of unconstrained Unchecked_Union
|
subtype. Add condition to detect equality between types that have an
|
subtype. Add condition to detect equality between types that have an
|
unconstrained Unchecked_Union component, and build a Raise_Program_Error
|
unconstrained Unchecked_Union component, and build a Raise_Program_Error
|
node. Add condition to detect equality between Unchecked_Union types
|
node. Add condition to detect equality between Unchecked_Union types
|
that lack inferable discriminants, and build a Raise_Program_Error node.
|
that lack inferable discriminants, and build a Raise_Program_Error node.
|
Otherwise build a TSS equality function call.
|
Otherwise build a TSS equality function call.
|
(Expand_N_Type_Conversion): Add condition to detect illegal conversions
|
(Expand_N_Type_Conversion): Add condition to detect illegal conversions
|
from a derived Unchecked_Union to an unconstrained non-Unchecked_Union
|
from a derived Unchecked_Union to an unconstrained non-Unchecked_Union
|
with the operand lacking inferable discriminants, and build a Raise_
|
with the operand lacking inferable discriminants, and build a Raise_
|
Program_Error node.
|
Program_Error node.
|
(Expand_Record_Equality): Remove guard that prevents Unchecked_Union
|
(Expand_Record_Equality): Remove guard that prevents Unchecked_Union
|
composite equality.
|
composite equality.
|
(Has_Inferable_Discriminants): Implement new predicate for objects and
|
(Has_Inferable_Discriminants): Implement new predicate for objects and
|
expressions of Unchecked_Union type. Check the body of subprogram for
|
expressions of Unchecked_Union type. Check the body of subprogram for
|
details.
|
details.
|
(Has_Unconstrained_UU_Components): Add function
|
(Has_Unconstrained_UU_Components): Add function
|
Component_Is_Unconstrained_UU. It is used to detect whether a single
|
Component_Is_Unconstrained_UU. It is used to detect whether a single
|
component is of an unconstrained Unchecked_Union subtype. Add function
|
component is of an unconstrained Unchecked_Union subtype. Add function
|
Variant_Is_Unconstrained_UU. It is used to detect whether a single
|
Variant_Is_Unconstrained_UU. It is used to detect whether a single
|
component inside a variant is of an unconstrained Unchecked_Union type.
|
component inside a variant is of an unconstrained Unchecked_Union type.
|
|
|
* exp_ch5.adb (Expand_Assign_Record): Add condition to copy the
|
* exp_ch5.adb (Expand_Assign_Record): Add condition to copy the
|
inferred discriminant values. Add condition to generate a case
|
inferred discriminant values. Add condition to generate a case
|
statement with an inferred discriminant as the switch.
|
statement with an inferred discriminant as the switch.
|
(Make_Component_List_Assign): Introduce a Boolean flag that determines
|
(Make_Component_List_Assign): Introduce a Boolean flag that determines
|
the behaviour of the subprogram in the presence of an Unchecked_Union.
|
the behaviour of the subprogram in the presence of an Unchecked_Union.
|
Add condition to trigger the usage of the inferred discriminant value
|
Add condition to trigger the usage of the inferred discriminant value
|
as the generated case statement switch.
|
as the generated case statement switch.
|
(Make_Field_Assign): Introduce a Boolean flag that determines the
|
(Make_Field_Assign): Introduce a Boolean flag that determines the
|
behaviour of the subprogram in the presence of an Unchecked_Union. Add
|
behaviour of the subprogram in the presence of an Unchecked_Union. Add
|
condition to trigger the usage of the inferred discriminant value as
|
condition to trigger the usage of the inferred discriminant value as
|
the right-hand side of the generated assignment.
|
the right-hand side of the generated assignment.
|
|
|
* exp_ch6.adb (Expand_Call): Add condition to skip extra actual
|
* exp_ch6.adb (Expand_Call): Add condition to skip extra actual
|
parameter generation when dealing with Unchecked_Unions.
|
parameter generation when dealing with Unchecked_Unions.
|
|
|
* checks.adb (Apply_Discriminant_Check): Do not apply discriminant
|
* checks.adb (Apply_Discriminant_Check): Do not apply discriminant
|
checks for Unchecked_Unions.
|
checks for Unchecked_Unions.
|
|
|
* einfo.ads: Update comment on usage of flag Has_Per_Object_Constraint
|
* einfo.ads: Update comment on usage of flag Has_Per_Object_Constraint
|
|
|
* exp_attr.adb (Expand_N_Attribute_Reference): Produce
|
* exp_attr.adb (Expand_N_Attribute_Reference): Produce
|
Raise_Program_Error nodes for the execution of Read and Write
|
Raise_Program_Error nodes for the execution of Read and Write
|
attributes of Unchecked_Union types and the execution of Input and
|
attributes of Unchecked_Union types and the execution of Input and
|
Output attributes of Unchecked_Union types that lack default
|
Output attributes of Unchecked_Union types that lack default
|
discriminant values.
|
discriminant values.
|
|
|
* sem_prag.adb (Analyze_Pragma): Remodel the analysis of pragma
|
* sem_prag.adb (Analyze_Pragma): Remodel the analysis of pragma
|
Unchecked_Union. Add procedure Check_Component. It is used to inspect
|
Unchecked_Union. Add procedure Check_Component. It is used to inspect
|
per-object constrained components of Unchecked_Unions for being
|
per-object constrained components of Unchecked_Unions for being
|
Unchecked_Unions themselves. Add procedure Check_Variant. It is used to
|
Unchecked_Unions themselves. Add procedure Check_Variant. It is used to
|
check individual components withing a variant.
|
check individual components withing a variant.
|
|
|
* sem_res.adb (Resolve_Comparison_Op): Remove guard that prevents
|
* sem_res.adb (Resolve_Comparison_Op): Remove guard that prevents
|
comparison of Unchecked_Unions.
|
comparison of Unchecked_Unions.
|
(Resolve_Equality_OP): Remove guard that prevents equality between
|
(Resolve_Equality_OP): Remove guard that prevents equality between
|
Unchecked_Unions.
|
Unchecked_Unions.
|
|
|
* sem_util.adb (Build_Component_Subtype): Add guard to prevent creation
|
* sem_util.adb (Build_Component_Subtype): Add guard to prevent creation
|
of component subtypes for Unchecked_Union components.
|
of component subtypes for Unchecked_Union components.
|
(Get_Actual_Subtype): Add condition that returs the Unchecked_Union type
|
(Get_Actual_Subtype): Add condition that returs the Unchecked_Union type
|
since it is the actual subtype.
|
since it is the actual subtype.
|
|
|
* sem_ch12.adb (Instantiate_Type): Add condition to detect the correct
|
* sem_ch12.adb (Instantiate_Type): Add condition to detect the correct
|
pass of Unchecked_Union subtypes as generic actuals to formal types
|
pass of Unchecked_Union subtypes as generic actuals to formal types
|
that lack known_discriminant_parts or that are derived Unchecked_Union
|
that lack known_discriminant_parts or that are derived Unchecked_Union
|
types, and do nothing. In any other case, produce an error message.
|
types, and do nothing. In any other case, produce an error message.
|
|
|
* sem_ch3.adb (Analyze_Component_Declaration): Add function
|
* sem_ch3.adb (Analyze_Component_Declaration): Add function
|
Contains_POC. It determines whether a constraint uses the discriminant
|
Contains_POC. It determines whether a constraint uses the discriminant
|
of an enclosing record type.
|
of an enclosing record type.
|
Add condition to detect per-object constrained component and set the
|
Add condition to detect per-object constrained component and set the
|
appropriate flag.
|
appropriate flag.
|
(Derived_Type_Declaration): Remove guard that prevents derivation from
|
(Derived_Type_Declaration): Remove guard that prevents derivation from
|
Unchecked_Union types.
|
Unchecked_Union types.
|
(Process_Subtype): Remove quard that prevents the creation of Unchecked_
|
(Process_Subtype): Remove quard that prevents the creation of Unchecked_
|
Union subtypes.
|
Union subtypes.
|
|
|
* sem_ch4.adb (Analyze_Selected_Component): Correct the detection of
|
* sem_ch4.adb (Analyze_Selected_Component): Correct the detection of
|
references to Unchecked_Union discriminants.
|
references to Unchecked_Union discriminants.
|
|
|
* sem_ch6.adb (Create_Extra_Formals): Add condition to skip extra
|
* sem_ch6.adb (Create_Extra_Formals): Add condition to skip extra
|
formal generation when dealing with Unchecked_Unions.
|
formal generation when dealing with Unchecked_Unions.
|
(Set_Actual_Subtypes): Add condition to prevent generation of actual
|
(Set_Actual_Subtypes): Add condition to prevent generation of actual
|
subtypes for Unchecked_Unions.
|
subtypes for Unchecked_Unions.
|
|
|
* sem_ch7.adb (Analyze_Package_Specification): Add procedure
|
* sem_ch7.adb (Analyze_Package_Specification): Add procedure
|
Inspect_Unchecked_Union_Completion. It is used to detect incorrect
|
Inspect_Unchecked_Union_Completion. It is used to detect incorrect
|
completions of discriminated partial views by Unchecked_Unions and
|
completions of discriminated partial views by Unchecked_Unions and
|
produce an error message.
|
produce an error message.
|
|
|
2004-08-09 Richard Kenner
|
2004-08-09 Richard Kenner
|
|
|
* trans.c (struct stmt_group): New field, GLOBAL.
|
* trans.c (struct stmt_group): New field, GLOBAL.
|
(global_stmt_group, gnu_elab_proc_decl, build_unit_elab): Deleted.
|
(global_stmt_group, gnu_elab_proc_decl, build_unit_elab): Deleted.
|
(struct elab_info): New struct.
|
(struct elab_info): New struct.
|
(elab_info_list, gnu_elab_proc_stack): New variables.
|
(elab_info_list, gnu_elab_proc_stack): New variables.
|
(Compilation_Unit_to_gnu): New procedure.
|
(Compilation_Unit_to_gnu): New procedure.
|
(gigi): Call it and also handle elaboration procs we've saved.
|
(gigi): Call it and also handle elaboration procs we've saved.
|
(gnat_init_stmt_group): Don't set global_stmt_group; instead initialize
|
(gnat_init_stmt_group): Don't set global_stmt_group; instead initialize
|
global field from parent.
|
global field from parent.
|
(gnat_to_gnu): Get decl from gnu_elab_proc_stack.
|
(gnat_to_gnu): Get decl from gnu_elab_proc_stack.
|
(gnat_to_gnu, case N_Compilation_Unit): Call Compilation_Unit_to_gnu.
|
(gnat_to_gnu, case N_Compilation_Unit): Call Compilation_Unit_to_gnu.
|
(start_stmt_group): Initialize global field from parent.
|
(start_stmt_group): Initialize global field from parent.
|
(add_decl_expr): Set to global for current statement group.
|
(add_decl_expr): Set to global for current statement group.
|
(gnat_gimplify_expr, case NULL_EXPR): Add operand 0 to pre list, not
|
(gnat_gimplify_expr, case NULL_EXPR): Add operand 0 to pre list, not
|
post.
|
post.
|
|
|
* utils.c (global_bindings_p): True when no current_function_decl; no
|
* utils.c (global_bindings_p): True when no current_function_decl; no
|
longer check current_binding_level.
|
longer check current_binding_level.
|
|
|
2004-08-09 Ben Brosgol
|
2004-08-09 Ben Brosgol
|
|
|
* xgnatugn.adb: Added logic to deal with @ifset/@ifclear for edition
|
* xgnatugn.adb: Added logic to deal with @ifset/@ifclear for edition
|
choice.
|
choice.
|
|
|
* gnat_rm.texi, gnat_ugn.texi: Added edition conditionalization logic.
|
* gnat_rm.texi, gnat_ugn.texi: Added edition conditionalization logic.
|
|
|
2004-08-06 Andreas Schwab
|
2004-08-06 Andreas Schwab
|
|
|
* utils.c (gnat_define_builtin): Remove second parameter of
|
* utils.c (gnat_define_builtin): Remove second parameter of
|
make_decl_rtl.
|
make_decl_rtl.
|
(begin_subprog_body): Likewise.
|
(begin_subprog_body): Likewise.
|
|
|
2004-07-26 Arnaud Charlet
|
2004-07-26 Arnaud Charlet
|
|
|
* sem_util.adb (Requires_Transient_Scope): Temporarily disable
|
* sem_util.adb (Requires_Transient_Scope): Temporarily disable
|
optimization, not supported by the tree-ssa back-end.
|
optimization, not supported by the tree-ssa back-end.
|
|
|
2004-07-26 Olivier Hainque
|
2004-07-26 Olivier Hainque
|
|
|
* s-mastop-irix.adb: Update comments.
|
* s-mastop-irix.adb: Update comments.
|
|
|
* a-except.adb (Exception_Information): Raise Constraint_Error if
|
* a-except.adb (Exception_Information): Raise Constraint_Error if
|
exception Id is Null_Id.
|
exception Id is Null_Id.
|
This is required behavior, which is more reliably and clearly checked
|
This is required behavior, which is more reliably and clearly checked
|
at the top level interface level.
|
at the top level interface level.
|
|
|
2004-07-26 Javier Miranda
|
2004-07-26 Javier Miranda
|
|
|
* exp_aggr.adb (Build_Array_Aggr_Code): Do not build the initialization
|
* exp_aggr.adb (Build_Array_Aggr_Code): Do not build the initialization
|
call if a component has no default_expression and the box is used.
|
call if a component has no default_expression and the box is used.
|
|
|
* sem_aggr.adb (Resolve_Array_Aggregate): If a component has no
|
* sem_aggr.adb (Resolve_Array_Aggregate): If a component has no
|
default_expression and you use box, it behaves as if you had declared a
|
default_expression and you use box, it behaves as if you had declared a
|
stand-alone object.
|
stand-alone object.
|
(Resolve_Record_Aggregate): If a component has no default_expression and
|
(Resolve_Record_Aggregate): If a component has no default_expression and
|
you use box, it behaves as if you had declared a stand-alone object.
|
you use box, it behaves as if you had declared a stand-alone object.
|
|
|
* sem_ch10.adb (Install_Siblings): Do not make visible the private
|
* sem_ch10.adb (Install_Siblings): Do not make visible the private
|
entities of private-with siblings.
|
entities of private-with siblings.
|
|
|
2004-07-26 Ed Schonberg
|
2004-07-26 Ed Schonberg
|
|
|
* sem_ch3.adb (Build_Underlying_Full_View): If this is the full view
|
* sem_ch3.adb (Build_Underlying_Full_View): If this is the full view
|
for a component of an itype, set the parent pointer for analysis,
|
for a component of an itype, set the parent pointer for analysis,
|
there is no list in which to insert it.
|
there is no list in which to insert it.
|
|
|
* sem_res.adb (Resolve): Call Rewrite_Renamed_Operator only for
|
* sem_res.adb (Resolve): Call Rewrite_Renamed_Operator only for
|
bona-fide renamings, not for inherited operations.
|
bona-fide renamings, not for inherited operations.
|
|
|
* exp_ch4.adb (Expand_Allocator_Expression): If the allocator is an
|
* exp_ch4.adb (Expand_Allocator_Expression): If the allocator is an
|
actual for a formal that is an access parameter, create local
|
actual for a formal that is an access parameter, create local
|
finalization list even if the expression is not an aggregate.
|
finalization list even if the expression is not an aggregate.
|
|
|
2004-07-26 Ed Schonberg
|
2004-07-26 Ed Schonberg
|
|
|
PR ada/16213
|
PR ada/16213
|
* sem_ch8.adb (Attribute_Renaming, Check_Library_Level_Renaming):
|
* sem_ch8.adb (Attribute_Renaming, Check_Library_Level_Renaming):
|
Diagnose properly illegal subprogram renamings that are library units.
|
Diagnose properly illegal subprogram renamings that are library units.
|
|
|
2004-07-26 Ed Schonberg
|
2004-07-26 Ed Schonberg
|
|
|
PR ada/15588
|
PR ada/15588
|
* sem_util.adb (Is_OK_Variable_For_Out_Formal): If actual is a type
|
* sem_util.adb (Is_OK_Variable_For_Out_Formal): If actual is a type
|
conversion rewritten as an unchecked conversion, check that original
|
conversion rewritten as an unchecked conversion, check that original
|
expression is a variable.
|
expression is a variable.
|
|
|
* exp_ch4.adb (Expand_N_Type_Conversion): If rewriting as an
|
* exp_ch4.adb (Expand_N_Type_Conversion): If rewriting as an
|
unchecked_conversion, create new node rather than rewriting in place,
|
unchecked_conversion, create new node rather than rewriting in place,
|
to preserve original construct.
|
to preserve original construct.
|
|
|
2004-07-26 Richard Kenner
|
2004-07-26 Richard Kenner
|
|
|
* gigi.h (gnat_expand_body): Deleted.
|
* gigi.h (gnat_expand_body): Deleted.
|
|
|
* Make-lang.in: (trans.o): Depends on function.h.
|
* Make-lang.in: (trans.o): Depends on function.h.
|
|
|
* misc.c: (gnat_expand_body): Moved to here.
|
* misc.c: (gnat_expand_body): Moved to here.
|
|
|
* trans.c (gnat_expand_body_1): Deleted.
|
* trans.c (gnat_expand_body_1): Deleted.
|
(gnat_expand_body): Moved from here.
|
(gnat_expand_body): Moved from here.
|
(gnat_to_gnu): N_Implicit_Label_Declaration forces being in elab proc.
|
(gnat_to_gnu): N_Implicit_Label_Declaration forces being in elab proc.
|
(add_stmt): Check for marked visited with global_bindings_p.
|
(add_stmt): Check for marked visited with global_bindings_p.
|
(gnat_gimplify_expr, case COMPONENT_REF): New case.
|
(gnat_gimplify_expr, case COMPONENT_REF): New case.
|
(gnat_gimplify_expr, case NULL_EXPR): Set TREE_NO_WARNING for temp.
|
(gnat_gimplify_expr, case NULL_EXPR): Set TREE_NO_WARNING for temp.
|
|
|
* utils2.c (build_binary_op, case MODIFY_EXPR): Put LHS in a
|
* utils2.c (build_binary_op, case MODIFY_EXPR): Put LHS in a
|
VIEW_CONVERT_EXPR if not operation type.
|
VIEW_CONVERT_EXPR if not operation type.
|
|
|
* utils.c (update_pointer_to): Set DECL_ORIGINAL_FIELD for
|
* utils.c (update_pointer_to): Set DECL_ORIGINAL_FIELD for
|
fat pointer.
|
fat pointer.
|
|
|
* decl.c, cuintp.c, gigi.h, misc.c, trans.c, utils.c, utils2.c: Minor
|
* decl.c, cuintp.c, gigi.h, misc.c, trans.c, utils.c, utils2.c: Minor
|
changes: reformatting of negation operators, removing unneeded
|
changes: reformatting of negation operators, removing unneeded
|
inequality comparison with zero, converting equality comparisons with
|
inequality comparison with zero, converting equality comparisons with
|
zero to negations, changing int/0/1 to bool/false/true, replace calls
|
zero to negations, changing int/0/1 to bool/false/true, replace calls
|
to gigi_abort with abort, and various other similar changes.
|
to gigi_abort with abort, and various other similar changes.
|
|
|
2004-07-26 Vincent Celier
|
2004-07-26 Vincent Celier
|
|
|
* gnatcmd.adb (GNATCmd): Add processing for new built-in command
|
* gnatcmd.adb (GNATCmd): Add processing for new built-in command
|
"setup".
|
"setup".
|
|
|
* make.adb (Gnatmake): Fail when a library is not present and there is
|
* make.adb (Gnatmake): Fail when a library is not present and there is
|
no object directory.
|
no object directory.
|
|
|
* mlib-prj.adb (Check_Library): No need to check if the library needs
|
* mlib-prj.adb (Check_Library): No need to check if the library needs
|
to be rebuilt if there is no object directory, hence no object files
|
to be rebuilt if there is no object directory, hence no object files
|
to build the library.
|
to build the library.
|
|
|
* opt.ads (Setup_Projects): New Boolean flag.
|
* opt.ads (Setup_Projects): New Boolean flag.
|
|
|
* prj-nmsc.adb (Locate_Directory): New parameter Project, Kind and
|
* prj-nmsc.adb (Locate_Directory): New parameter Project, Kind and
|
Location.
|
Location.
|
Create directory when Kind /= "" and in "gnat setup". Report error if
|
Create directory when Kind /= "" and in "gnat setup". Report error if
|
directory cannot be created.
|
directory cannot be created.
|
(Ada_Check): Create library interface copy dir if it does not exist
|
(Ada_Check): Create library interface copy dir if it does not exist
|
and we are in "gnat setup".
|
and we are in "gnat setup".
|
(Find_Sources): No error if in "gnat setup" and no Ada sources were
|
(Find_Sources): No error if in "gnat setup" and no Ada sources were
|
found.
|
found.
|
(Language_Independent_Check): Create object directory, exec directory
|
(Language_Independent_Check): Create object directory, exec directory
|
and/or library directory if they do not exist and we are in
|
and/or library directory if they do not exist and we are in
|
"gnat setup".
|
"gnat setup".
|
|
|
* vms_conv.ads: (Command_Type): New command Setup.
|
* vms_conv.ads: (Command_Type): New command Setup.
|
|
|
* vms_conv.adb (Initialize): Add Setup component of Cammand_List.
|
* vms_conv.adb (Initialize): Add Setup component of Cammand_List.
|
|
|
* vms_data.ads: Add qualifiers/switches for new built-in command
|
* vms_data.ads: Add qualifiers/switches for new built-in command
|
"setup".
|
"setup".
|
|
|
2004-07-25 Richard Henderson
|
2004-07-25 Richard Henderson
|
|
|
* utils.c (create_subprog_decl): Set DECL_ARTIFICIAL and
|
* utils.c (create_subprog_decl): Set DECL_ARTIFICIAL and
|
DECL_IGNORED_P on RESULT_DECL.
|
DECL_IGNORED_P on RESULT_DECL.
|
|
|
2004-07-20 Olivier Hainque
|
2004-07-20 Olivier Hainque
|
|
|
* a-elchha.adb (Last_Chance_Handler): Remove the bogus buffer dynamic
|
* a-elchha.adb (Last_Chance_Handler): Remove the bogus buffer dynamic
|
allocation and potentially overflowing update with
|
allocation and potentially overflowing update with
|
Tailored_Exception_Information. Use the sec-stack free procedural
|
Tailored_Exception_Information. Use the sec-stack free procedural
|
interface to output Exception_Information instead.
|
interface to output Exception_Information instead.
|
|
|
* a-except.adb (To_Stderr): New subprogram for character, and string
|
* a-except.adb (To_Stderr): New subprogram for character, and string
|
version moved from a-exextr to be visible from other separate units.
|
version moved from a-exextr to be visible from other separate units.
|
(Tailored_Exception_Information): Remove the procedural version,
|
(Tailored_Exception_Information): Remove the procedural version,
|
previously used by the default Last_Chance_Handler and not any more.
|
previously used by the default Last_Chance_Handler and not any more.
|
Adjust various comments.
|
Adjust various comments.
|
|
|
* a-exexda.adb: Generalize the exception information procedural
|
* a-exexda.adb: Generalize the exception information procedural
|
interface, to minimize the use of secondary stack and the need for
|
interface, to minimize the use of secondary stack and the need for
|
local buffers when the info is to be output to stderr:
|
local buffers when the info is to be output to stderr:
|
(Address_Image): Removed.
|
(Address_Image): Removed.
|
(Append_Info_Character): New subprogram, checking for overflows and
|
(Append_Info_Character): New subprogram, checking for overflows and
|
outputing to stderr if buffer to fill is of length 0.
|
outputing to stderr if buffer to fill is of length 0.
|
(Append_Info_String): Output to stderr if buffer to fill is of length 0.
|
(Append_Info_String): Output to stderr if buffer to fill is of length 0.
|
(Append_Info_Address, Append_Info_Exception_Name,
|
(Append_Info_Address, Append_Info_Exception_Name,
|
Append_Info_Exception_Message, Append_Info_Basic_Exception_Information,
|
Append_Info_Exception_Message, Append_Info_Basic_Exception_Information,
|
Append_Info_Basic_Exception_Traceback,
|
Append_Info_Basic_Exception_Traceback,
|
Append_Info_Exception_Information): New subprograms.
|
Append_Info_Exception_Information): New subprograms.
|
(Append_Info_Nat, Append_Info_NL): Use Append_Info_Character.
|
(Append_Info_Nat, Append_Info_NL): Use Append_Info_Character.
|
(Basic_Exception_Info_Maxlength, Basic_Exception_Tback_Maxlength,
|
(Basic_Exception_Info_Maxlength, Basic_Exception_Tback_Maxlength,
|
Exception_Info_Maxlength, Exception_Name_Length,
|
Exception_Info_Maxlength, Exception_Name_Length,
|
Exception_Message_Length): New subprograms.
|
Exception_Message_Length): New subprograms.
|
(Exception_Information): Use Append_Info_Exception_Information.
|
(Exception_Information): Use Append_Info_Exception_Information.
|
(Tailored_Exception_Information): Use
|
(Tailored_Exception_Information): Use
|
Append_Info_Basic_Exception_Information.
|
Append_Info_Basic_Exception_Information.
|
Export services for the default Last_Chance_Handler.
|
Export services for the default Last_Chance_Handler.
|
|
|
* a-exextr.adb (To_Stderr): Remove. Now in a-except to be usable by
|
* a-exextr.adb (To_Stderr): Remove. Now in a-except to be usable by
|
other separate units.
|
other separate units.
|
|
|
2004-07-20 Vincent Celier
|
2004-07-20 Vincent Celier
|
|
|
* clean.adb, mlib-utl.adb, osint.adb, makegpr.adb: Minor reformatting.
|
* clean.adb, mlib-utl.adb, osint.adb, makegpr.adb: Minor reformatting.
|
|
|
2004-07-20 Ed Schonberg
|
2004-07-20 Ed Schonberg
|
|
|
* freeze.adb (Freeze_Entity): If entity is a discriminated record type,
|
* freeze.adb (Freeze_Entity): If entity is a discriminated record type,
|
emit itype references for the designated types of component types that
|
emit itype references for the designated types of component types that
|
are declared outside of the full record declaration, and that may
|
are declared outside of the full record declaration, and that may
|
denote a partial view of that record type.
|
denote a partial view of that record type.
|
|
|
2004-07-20 Ed Schonberg
|
2004-07-20 Ed Schonberg
|
|
|
PR ada/15607
|
PR ada/15607
|
* sem_ch3.adb (Build_Discriminated_Subtype): Do not attach a subtype
|
* sem_ch3.adb (Build_Discriminated_Subtype): Do not attach a subtype
|
which is the designated type in an access component declaration, to the
|
which is the designated type in an access component declaration, to the
|
list of incomplete dependents of the parent type, to avoid elaboration
|
list of incomplete dependents of the parent type, to avoid elaboration
|
issues with out-of-scope subtypes.
|
issues with out-of-scope subtypes.
|
(Complete_Private_Subtype): Recompute Has_Unknown_Discriminants from the
|
(Complete_Private_Subtype): Recompute Has_Unknown_Discriminants from the
|
full view of the parent.
|
full view of the parent.
|
|
|
2004-07-20 Ed Schonberg
|
2004-07-20 Ed Schonberg
|
|
|
PR ada/15610
|
PR ada/15610
|
* sem_ch8.adb (Find_Expanded_Name): If name is overloaded, reject
|
* sem_ch8.adb (Find_Expanded_Name): If name is overloaded, reject
|
entities that are hidden, such as references to generic actuals
|
entities that are hidden, such as references to generic actuals
|
outside an instance.
|
outside an instance.
|
|
|
2004-07-20 Javier Miranda
|
2004-07-20 Javier Miranda
|
|
|
* sem_ch4.adb (Try_Object_Operation): New subprogram that gives
|
* sem_ch4.adb (Try_Object_Operation): New subprogram that gives
|
support to the new notation.
|
support to the new notation.
|
(Analyze_Selected_Component): Add call to Try_Object_Operation.
|
(Analyze_Selected_Component): Add call to Try_Object_Operation.
|
|
|
2004-07-20 Jose Ruiz
|
2004-07-20 Jose Ruiz
|
|
|
* s-taprob.adb: Adding the elaboration code required for initializing
|
* s-taprob.adb: Adding the elaboration code required for initializing
|
the tasking soft links that are common to the full and the restricted
|
the tasking soft links that are common to the full and the restricted
|
run times.
|
run times.
|
|
|
* s-tarest.adb (Init_RTS): Tasking soft links that are shared with the
|
* s-tarest.adb (Init_RTS): Tasking soft links that are shared with the
|
restricted run time has been moved to the package
|
restricted run time has been moved to the package
|
System.Soft_Links.Tasking.
|
System.Soft_Links.Tasking.
|
|
|
* s-tasini.adb (Init_RTS): Tasking soft links that are shared with the
|
* s-tasini.adb (Init_RTS): Tasking soft links that are shared with the
|
restricted run time has been moved to the package
|
restricted run time has been moved to the package
|
System.Soft_Links.Tasking.
|
System.Soft_Links.Tasking.
|
|
|
* Makefile.rtl: Add entry for s-solita.o in run-time library list.
|
* Makefile.rtl: Add entry for s-solita.o in run-time library list.
|
|
|
* s-solita.ads, s-solita.adb: New files.
|
* s-solita.ads, s-solita.adb: New files.
|
|
|
2004-07-20 Richard Kenner
|
2004-07-20 Richard Kenner
|
|
|
* trans.c (Identifier_to_gnu, Pragma_to_gnu, Attribute_to_gnu,
|
* trans.c (Identifier_to_gnu, Pragma_to_gnu, Attribute_to_gnu,
|
Case_Statement_to_gnu): Split off from gnat_to_gnu.
|
Case_Statement_to_gnu): Split off from gnat_to_gnu.
|
(Loop_Statement_to_gnu, Subprogram_Body_to_gnu, call_to_gnu,
|
(Loop_Statement_to_gnu, Subprogram_Body_to_gnu, call_to_gnu,
|
Handled_Sequence_Of_Statements_to_gnu, Exception_Handler_to_gnu_sjlj,
|
Handled_Sequence_Of_Statements_to_gnu, Exception_Handler_to_gnu_sjlj,
|
Exception_Handler_to_gnu_zcx): Likewise.
|
Exception_Handler_to_gnu_zcx): Likewise.
|
|
|
2004-07-17 Joseph S. Myers
|
2004-07-17 Joseph S. Myers
|
|
|
* gigi.h (builtin_function): Declare.
|
* gigi.h (builtin_function): Declare.
|
|
|
2004-07-15 Robert Dewar
|
2004-07-15 Robert Dewar
|
|
|
* makegpr.adb, s-secsta.ads, sem_ch3.adb, sem_case.adb: Minor
|
* makegpr.adb, s-secsta.ads, sem_ch3.adb, sem_case.adb: Minor
|
reformatting
|
reformatting
|
|
|
* gnat_ugn.texi: Add instantiation of direct_io or sequential_io with
|
* gnat_ugn.texi: Add instantiation of direct_io or sequential_io with
|
access values as an example of a warning.
|
access values as an example of a warning.
|
|
|
* gnat_rm.texi: Document new attribute Has_Access_Values
|
* gnat_rm.texi: Document new attribute Has_Access_Values
|
|
|
* gnat-style.texi: Document that box comments belong on nested
|
* gnat-style.texi: Document that box comments belong on nested
|
subprograms
|
subprograms
|
|
|
* sem_util.ads (Has_Access_Values): Improved documentation
|
* sem_util.ads (Has_Access_Values): Improved documentation
|
|
|
* s-finimp.ads, s-finimp.adb: Fix spelling error in comment
|
* s-finimp.ads, s-finimp.adb: Fix spelling error in comment
|
|
|
* sem_prag.adb (Check_Duplicated_Export_Name): New procedure
|
* sem_prag.adb (Check_Duplicated_Export_Name): New procedure
|
(Process_Interface_Name): Call to this new procedure
|
(Process_Interface_Name): Call to this new procedure
|
(Set_Extended_Import_Export_External_Name): Call to this new procedure
|
(Set_Extended_Import_Export_External_Name): Call to this new procedure
|
|
|
* s-mastop-x86.adb, 9drpc.adb: Fix spelling error in comment
|
* s-mastop-x86.adb, 9drpc.adb: Fix spelling error in comment
|
|
|
* a-direio.ads, a-sequio.ads: Warn if Element_Type has access values
|
* a-direio.ads, a-sequio.ads: Warn if Element_Type has access values
|
|
|
* einfo.ads: Minor comment typo fixed
|
* einfo.ads: Minor comment typo fixed
|
|
|
2004-07-15 Jose Ruiz
|
2004-07-15 Jose Ruiz
|
|
|
* snames.adb: Add _atcb.
|
* snames.adb: Add _atcb.
|
|
|
* snames.ads: Add Name_uATCB.
|
* snames.ads: Add Name_uATCB.
|
|
|
* s-tarest.adb (Create_Restricted_Task): ATCBs are always preallocated
|
* s-tarest.adb (Create_Restricted_Task): ATCBs are always preallocated
|
(in the expanded code) when using the restricted run time.
|
(in the expanded code) when using the restricted run time.
|
|
|
* s-tarest.ads (Create_Restricted_Task): Created_Task transformed into
|
* s-tarest.ads (Create_Restricted_Task): Created_Task transformed into
|
a in parameter in order to allow ATCBs to be preallocated (in the
|
a in parameter in order to allow ATCBs to be preallocated (in the
|
expanded code).
|
expanded code).
|
|
|
* s-taskin.adb (Initialize_ATCB): T converted into a in parameter in
|
* s-taskin.adb (Initialize_ATCB): T converted into a in parameter in
|
order to allow ATCBs to be preallocated. In case of error, the ATCB is
|
order to allow ATCBs to be preallocated. In case of error, the ATCB is
|
deallocated in System.Tasking.Stages.
|
deallocated in System.Tasking.Stages.
|
|
|
* s-taskin.ads (Initialize_ATCB): T converted into a in parameter in
|
* s-taskin.ads (Initialize_ATCB): T converted into a in parameter in
|
order to allow ATCBs to be preallocated.
|
order to allow ATCBs to be preallocated.
|
|
|
* s-tassta.adb (Create_Task): In case of error the ATCB is deallocated
|
* s-tassta.adb (Create_Task): In case of error the ATCB is deallocated
|
here. It was previously done in Initialize_ATCB.
|
here. It was previously done in Initialize_ATCB.
|
|
|
* rtsfind.ads: Make the Ada_Task_Control_Block visible.
|
* rtsfind.ads: Make the Ada_Task_Control_Block visible.
|
|
|
* exp_ch9.adb: Preallocate the Ada_Task_Control_Block when using the
|
* exp_ch9.adb: Preallocate the Ada_Task_Control_Block when using the
|
Restricted run time.
|
Restricted run time.
|
|
|
* exp_ch3.adb: When using the Restricted run time, pass the
|
* exp_ch3.adb: When using the Restricted run time, pass the
|
preallocated Ada_Task_Control_Block when creating a task.
|
preallocated Ada_Task_Control_Block when creating a task.
|
|
|
2004-07-15 Ed Schonberg
|
2004-07-15 Ed Schonberg
|
|
|
* sem_util.adb (Normalize_Actuals): If there are no actuals on a
|
* sem_util.adb (Normalize_Actuals): If there are no actuals on a
|
function call that is itself an actual in an enclosing call, diagnose
|
function call that is itself an actual in an enclosing call, diagnose
|
problem here rather than assuming that resolution will catch it.
|
problem here rather than assuming that resolution will catch it.
|
|
|
* sem_ch7.adb (Analyze_Package_Specification): If the specification is
|
* sem_ch7.adb (Analyze_Package_Specification): If the specification is
|
the local copy of a generic unit for a formal package, and the generic
|
the local copy of a generic unit for a formal package, and the generic
|
is a child unit, install private part of ancestors before compiling
|
is a child unit, install private part of ancestors before compiling
|
private part of spec.
|
private part of spec.
|
|
|
* sem_cat.adb (Validate_Categorization_Dependency): Simplify code to
|
* sem_cat.adb (Validate_Categorization_Dependency): Simplify code to
|
use scope entities rather than tree structures, to handle properly
|
use scope entities rather than tree structures, to handle properly
|
parent units that are instances rewritten as bodies for inlining
|
parent units that are instances rewritten as bodies for inlining
|
purposes.
|
purposes.
|
|
|
* sem_ch10.adb (Get_Parent_Entity, Implicit_With_On_Parent,
|
* sem_ch10.adb (Get_Parent_Entity, Implicit_With_On_Parent,
|
Remove_Parents): Handle properly a parent unit that is an
|
Remove_Parents): Handle properly a parent unit that is an
|
instantiation, when the unit has been rewritten as a body for inlining
|
instantiation, when the unit has been rewritten as a body for inlining
|
purposes.
|
purposes.
|
|
|
* par.adb (Goto_List): Global variable to collect goto statements in a
|
* par.adb (Goto_List): Global variable to collect goto statements in a
|
given unit, for use in detecting natural loops.
|
given unit, for use in detecting natural loops.
|
|
|
* par-ch5.adb (P_Goto_Statement): Add goto to global Goto_List, for
|
* par-ch5.adb (P_Goto_Statement): Add goto to global Goto_List, for
|
use in detecting natural loops.
|
use in detecting natural loops.
|
|
|
* par-labl.adb (Find_Natural_Loops): Recognize loops create by
|
* par-labl.adb (Find_Natural_Loops): Recognize loops create by
|
backwards goto's, and rewrite as a infinite loop, to improve locality
|
backwards goto's, and rewrite as a infinite loop, to improve locality
|
of temporaries.
|
of temporaries.
|
|
|
* exp_util.adb (Force_Evaluation): Recognize a left-hand side
|
* exp_util.adb (Force_Evaluation): Recognize a left-hand side
|
subcomponent that includes an indexed reference, to prevent the
|
subcomponent that includes an indexed reference, to prevent the
|
generation of copies that would miscompile the desired assignment
|
generation of copies that would miscompile the desired assignment
|
statement.
|
statement.
|
(Build_Task_Image_Decls): Add a numeric suffix to
|
(Build_Task_Image_Decls): Add a numeric suffix to
|
generated name for string variable, to avoid spurious conflicts with
|
generated name for string variable, to avoid spurious conflicts with
|
the name of the type of a single protected object.
|
the name of the type of a single protected object.
|
|
|
* exp_ch4.adb (Expand_Array_Equality): If indices are distinct, use a
|
* exp_ch4.adb (Expand_Array_Equality): If indices are distinct, use a
|
loop with an explicit exit statement, to avoid generating an
|
loop with an explicit exit statement, to avoid generating an
|
out-of-range value with 'Succ leading to spurious constraint_errors
|
out-of-range value with 'Succ leading to spurious constraint_errors
|
when compiling with -gnatVo.
|
when compiling with -gnatVo.
|
|
|
2004-07-15 Thomas Quinot
|
2004-07-15 Thomas Quinot
|
|
|
* sem_ch4.adb (Analyze_Slice): Always call Analyze on the prefix: it
|
* sem_ch4.adb (Analyze_Slice): Always call Analyze on the prefix: it
|
might not be analyzed yet, even if its Etype is already set (case of an
|
might not be analyzed yet, even if its Etype is already set (case of an
|
unchecked conversion built using Unchecked_Convert_To, for example).
|
unchecked conversion built using Unchecked_Convert_To, for example).
|
If the prefix has already been analyzed, this will be a nop anyway.
|
If the prefix has already been analyzed, this will be a nop anyway.
|
|
|
* exp_ch5.adb (Make_Tag_Ctrl_Assignment): For an assignment of a
|
* exp_ch5.adb (Make_Tag_Ctrl_Assignment): For an assignment of a
|
controller type, or an assignment of a record type with controlled
|
controller type, or an assignment of a record type with controlled
|
components, copy only user data, and leave the finalization chain
|
components, copy only user data, and leave the finalization chain
|
pointers untouched.
|
pointers untouched.
|
|
|
2004-07-15 Vincent Celier
|
2004-07-15 Vincent Celier
|
|
|
* make.adb (Collect_Arguments): Improve error message when attempting
|
* make.adb (Collect_Arguments): Improve error message when attempting
|
to compile a source not part of any project, when -x is not used.
|
to compile a source not part of any project, when -x is not used.
|
|
|
* prj.ads: (Defined_Variable_Kind): New subtype
|
* prj.ads: (Defined_Variable_Kind): New subtype
|
|
|
* prj-attr.adb (Register_New_Package): Two new procedures to register
|
* prj-attr.adb (Register_New_Package): Two new procedures to register
|
a package with or without its attributes.
|
a package with or without its attributes.
|
(Register_New_Attribute): Mew procedure to register a new attribute in a
|
(Register_New_Attribute): Mew procedure to register a new attribute in a
|
package.
|
package.
|
New attribute oriented subprograms: Attribute_Node_Id_Of,
|
New attribute oriented subprograms: Attribute_Node_Id_Of,
|
Attribute_Kind_Of, Set_Attribute_Kind_Of, Attribute_Name_Of,
|
Attribute_Kind_Of, Set_Attribute_Kind_Of, Attribute_Name_Of,
|
Variable_Kind_Of, Set_Variable_Kind_Of, Optional_Index_Of,
|
Variable_Kind_Of, Set_Variable_Kind_Of, Optional_Index_Of,
|
Next_Attribute.
|
Next_Attribute.
|
New package oriented subprograms: Package_Node_Id_Of,
|
New package oriented subprograms: Package_Node_Id_Of,
|
Add_Unknown_Package, First_Attribute_Of, Add_Attribute.
|
Add_Unknown_Package, First_Attribute_Of, Add_Attribute.
|
|
|
* prj-attr.ads (Attribute_Node_Id): Now a private, self initialized
|
* prj-attr.ads (Attribute_Node_Id): Now a private, self initialized
|
type.
|
type.
|
(Package_Node_Id): Now a private, self initialized type
|
(Package_Node_Id): Now a private, self initialized type
|
(Register_New_Package): New procedure to register a package with its
|
(Register_New_Package): New procedure to register a package with its
|
attributes.
|
attributes.
|
New attribute oriented subprograms: Attribute_Node_Id_Of,
|
New attribute oriented subprograms: Attribute_Node_Id_Of,
|
Attribute_Kind_Of, Set_Attribute_Kind_Of, Attribute_Name_Of,
|
Attribute_Kind_Of, Set_Attribute_Kind_Of, Attribute_Name_Of,
|
Variable_Kind_Of, Set_Variable_Kind_Of, Optional_Index_Of,
|
Variable_Kind_Of, Set_Variable_Kind_Of, Optional_Index_Of,
|
Next_Attribute.
|
Next_Attribute.
|
New package oriented subprograms: Package_Node_Id_Of,
|
New package oriented subprograms: Package_Node_Id_Of,
|
Add_Unknown_Package, First_Attribute_Of, Add_Attribute.
|
Add_Unknown_Package, First_Attribute_Of, Add_Attribute.
|
|
|
* prj-dect.adb (Parse_Attribute_Declaration,
|
* prj-dect.adb (Parse_Attribute_Declaration,
|
Parse_Package_Declaration): Adapt to new spec of Prj.Attr.
|
Parse_Package_Declaration): Adapt to new spec of Prj.Attr.
|
|
|
* prj-makr.adb (Make): Parse existing project file before creating
|
* prj-makr.adb (Make): Parse existing project file before creating
|
other files. Fail if there was an error during parsing.
|
other files. Fail if there was an error during parsing.
|
|
|
* prj-proc.adb (Add_Attributes, Process_Declarative_Items): Adapt to
|
* prj-proc.adb (Add_Attributes, Process_Declarative_Items): Adapt to
|
new spec of Prj.Attr.
|
new spec of Prj.Attr.
|
|
|
* prj-strt.adb (Attribute_Reference, Parse_Variable_Reference): Adapt
|
* prj-strt.adb (Attribute_Reference, Parse_Variable_Reference): Adapt
|
to new spec of Prj.Attr.
|
to new spec of Prj.Attr.
|
|
|
2004-07-15 Richard Kenner
|
2004-07-15 Richard Kenner
|
|
|
* utils2.c: Fix typo in comment.
|
* utils2.c: Fix typo in comment.
|
|
|
2004-07-14 Richard Kenner
|
2004-07-14 Richard Kenner
|
|
|
* trans.c (add_decl_expr): Clear TREE_READONLY if clear DECL_INITIAL.
|
* trans.c (add_decl_expr): Clear TREE_READONLY if clear DECL_INITIAL.
|
* utils.c (unchecked_convert): Don't do two VIEW_CONVERT_EXPRs.
|
* utils.c (unchecked_convert): Don't do two VIEW_CONVERT_EXPRs.
|
|
|
2004-07-14 Andreas Schwab
|
2004-07-14 Andreas Schwab
|
|
|
* trans.c (gnat_init_stmt_group): Remove duplicate definition.
|
* trans.c (gnat_init_stmt_group): Remove duplicate definition.
|
|
|
2004-07-13 Richard Kenner
|
2004-07-13 Richard Kenner
|
|
|
* decl.c: (gnat_to_gnu_entity, object case): Convert initializer to
|
* decl.c: (gnat_to_gnu_entity, object case): Convert initializer to
|
object type.
|
object type.
|
(gnat_to_gnu_entity, case E_Record_Subtype): Properly set
|
(gnat_to_gnu_entity, case E_Record_Subtype): Properly set
|
TYPE_STUB_DECL.
|
TYPE_STUB_DECL.
|
|
|
* misc.c (gnat_types_compatible_p): New function.
|
* misc.c (gnat_types_compatible_p): New function.
|
(LANG_HOOKS_TYPES_COMPATIBLE_P): New hook, to use it.
|
(LANG_HOOKS_TYPES_COMPATIBLE_P): New hook, to use it.
|
(LANG_HOOKS_TYPE_MAX_SIZE, gnat_type_max_size): New.
|
(LANG_HOOKS_TYPE_MAX_SIZE, gnat_type_max_size): New.
|
|
|
* trans.c (gigi): Move processing of main N_Compilation_Unit here.
|
* trans.c (gigi): Move processing of main N_Compilation_Unit here.
|
(gnat_to_gnu, case N_Compilation_Unit): Just handle nested case here.
|
(gnat_to_gnu, case N_Compilation_Unit): Just handle nested case here.
|
(add_stmt): Force walking of sizes and DECL_INITIAL for DECL_EXPR.
|
(add_stmt): Force walking of sizes and DECL_INITIAL for DECL_EXPR.
|
(mark_visited): Don't mark dummy type.
|
(mark_visited): Don't mark dummy type.
|
(tree_transform ): Unless this is an In
|
(tree_transform ): Unless this is an In
|
parameter, we must remove any LJM building from GNU_NAME.
|
parameter, we must remove any LJM building from GNU_NAME.
|
(gnat_to_gnu, case N_String_Literal): Fill in indices in CONSTRUCTOR.
|
(gnat_to_gnu, case N_String_Literal): Fill in indices in CONSTRUCTOR.
|
(pos_to_constructor): Use int_const_binop.
|
(pos_to_constructor): Use int_const_binop.
|
(gnat_to_gnu, case N_Identifier): Don't reference DECL_INITIAL of
|
(gnat_to_gnu, case N_Identifier): Don't reference DECL_INITIAL of
|
PARM_DECL.
|
PARM_DECL.
|
|
|
* utils.c (gnat_init_decl_processing): Don't make two "void" decls.
|
* utils.c (gnat_init_decl_processing): Don't make two "void" decls.
|
(gnat_pushlevel): Set TREE_USE on BLOCK node.
|
(gnat_pushlevel): Set TREE_USE on BLOCK node.
|
(gnat_install_builtins): Add __builtin_memset.
|
(gnat_install_builtins): Add __builtin_memset.
|
|
|
2004-07-13 Olivier Hainque
|
2004-07-13 Olivier Hainque
|
|
|
* decl.c (gnat_to_gnu_entity ): If we are making a pointer
|
* decl.c (gnat_to_gnu_entity ): If we are making a pointer
|
for a renaming, stabilize the initialization expression if we are at a
|
for a renaming, stabilize the initialization expression if we are at a
|
local level. At the local level, uses of the renaming may be performed
|
local level. At the local level, uses of the renaming may be performed
|
by a direct dereference of the initializing expression, and we don't
|
by a direct dereference of the initializing expression, and we don't
|
want possible variables there to be evaluated for every use.
|
want possible variables there to be evaluated for every use.
|
|
|
* trans.c (gnat_stabilize_reference, gnat_stabilize_reference_1):
|
* trans.c (gnat_stabilize_reference, gnat_stabilize_reference_1):
|
Propagate TREE_SIDE_EFFECTS and TREE_THIS_VOLATILE to avoid loosing
|
Propagate TREE_SIDE_EFFECTS and TREE_THIS_VOLATILE to avoid loosing
|
them on the way. Account for the fact that we may introduce side
|
them on the way. Account for the fact that we may introduce side
|
effects in the process.
|
effects in the process.
|
|
|
2004-07-13 Richard Henderson
|
2004-07-13 Richard Henderson
|
|
|
* misc.c (default_pass_by_ref): Use pass_by_reference.
|
* misc.c (default_pass_by_ref): Use pass_by_reference.
|
|
|
2004-07-11 Joseph S. Myers
|
2004-07-11 Joseph S. Myers
|
|
|
* misc.c (LANG_HOOKS_CLEAR_BINDING_STACK, LANG_HOOKS_PUSHLEVEL,
|
* misc.c (LANG_HOOKS_CLEAR_BINDING_STACK, LANG_HOOKS_PUSHLEVEL,
|
LANG_HOOKS_POPLEVEL, LANG_HOOKS_SET_BLOCK): Remove.
|
LANG_HOOKS_POPLEVEL, LANG_HOOKS_SET_BLOCK): Remove.
|
|
|
2004-07-08 Richard Henderson
|
2004-07-08 Richard Henderson
|
|
|
* trans.c (gnat_to_gnu ): Update
|
* trans.c (gnat_to_gnu ): Update
|
commentary.
|
commentary.
|
|
|
2004-07-06 Vincent Celier
|
2004-07-06 Vincent Celier
|
|
|
* vms_conv.ads: Minor reformatting.
|
* vms_conv.ads: Minor reformatting.
|
Alphabetical order for enumerated values of type Command_Type, to have
|
Alphabetical order for enumerated values of type Command_Type, to have
|
the command in alphabetical order for the usage.
|
the command in alphabetical order for the usage.
|
|
|
* vms_conv.adb (Process_Argument): Set Keep_Temporary_Files to True for
|
* vms_conv.adb (Process_Argument): Set Keep_Temporary_Files to True for
|
the special qualifier /KEEP_TEMPORARY_FILES (minimum 6 characters).
|
the special qualifier /KEEP_TEMPORARY_FILES (minimum 6 characters).
|
|
|
* gnat_ugn.texi: Document new switch -dn for the GNAT driver.
|
* gnat_ugn.texi: Document new switch -dn for the GNAT driver.
|
|
|
* makegpr.adb (Global_Archive_Exists): New global Boolean variable
|
* makegpr.adb (Global_Archive_Exists): New global Boolean variable
|
(Add_Archive_Path): Only add the global archive if there is one.
|
(Add_Archive_Path): Only add the global archive if there is one.
|
(Build_Global_Archive): Set Global_Archive_Exists depending if there is
|
(Build_Global_Archive): Set Global_Archive_Exists depending if there is
|
or not any object file to put in the global archive, and don't build
|
or not any object file to put in the global archive, and don't build
|
a global archive if there is none.
|
a global archive if there is none.
|
(X_Switches): New table
|
(X_Switches): New table
|
(Compile_Link_With_Gnatmake): Pass to gnatmake the -X switches stored
|
(Compile_Link_With_Gnatmake): Pass to gnatmake the -X switches stored
|
in the X_Switches table, if any.
|
in the X_Switches table, if any.
|
(Initialize): Make sure the X_Switches table is empty
|
(Initialize): Make sure the X_Switches table is empty
|
(Scan_Arg): Record -X switches in table X_Switches
|
(Scan_Arg): Record -X switches in table X_Switches
|
|
|
* opt.ads (Keep_Temporary_Files): New Boolean flag, defaulted to False.
|
* opt.ads (Keep_Temporary_Files): New Boolean flag, defaulted to False.
|
|
|
* make.adb: Minor comment fix
|
* make.adb: Minor comment fix
|
|
|
* gnatname.adb (Gnatname): When not on VMS, and gnatname has been
|
* gnatname.adb (Gnatname): When not on VMS, and gnatname has been
|
invoked with directory information, add the directory in front of the
|
invoked with directory information, add the directory in front of the
|
path.
|
path.
|
|
|
* gnatchop.adb (Gnatchop): When not on VMS, and gnatchop has been
|
* gnatchop.adb (Gnatchop): When not on VMS, and gnatchop has been
|
invoked with directory information, add the directory in front of the
|
invoked with directory information, add the directory in front of the
|
path.
|
path.
|
|
|
* gnatcmd.adb (Delete_Temp_Config_Files): Only delete temporary files
|
* gnatcmd.adb (Delete_Temp_Config_Files): Only delete temporary files
|
when Keep_Temporary_Files is False.
|
when Keep_Temporary_Files is False.
|
(GNATCmd): When not on VMS, and the GNAT driver has been invoked with
|
(GNATCmd): When not on VMS, and the GNAT driver has been invoked with
|
directory information, add the directory in front of the path.
|
directory information, add the directory in front of the path.
|
When not on VMS, handle new switch -dn before the command to set
|
When not on VMS, handle new switch -dn before the command to set
|
Keep_Temporary_Files to True.
|
Keep_Temporary_Files to True.
|
(Non_VMS_Usage): Use lower case for the non VMS usage: this is valid
|
(Non_VMS_Usage): Use lower case for the non VMS usage: this is valid
|
everywhere.
|
everywhere.
|
|
|
* gnatlink.adb (Gnatlink): When not on VMS, and gnatlink has been
|
* gnatlink.adb (Gnatlink): When not on VMS, and gnatlink has been
|
invoked with directory information, add the directory in front of the
|
invoked with directory information, add the directory in front of the
|
path.
|
path.
|
|
|
2004-07-06 Thomas Quinot
|
2004-07-06 Thomas Quinot
|
|
|
* snames.ads, snames.adb (Name_Stub): New name for the distributed
|
* snames.ads, snames.adb (Name_Stub): New name for the distributed
|
systems annex.
|
systems annex.
|
|
|
* rtsfind.ads: New RTE TC_Object, for DSA/PolyORB.
|
* rtsfind.ads: New RTE TC_Object, for DSA/PolyORB.
|
New RTEs RAS_Proxy_Type and RAS_Proxy_Type_Access, for DSA.
|
New RTEs RAS_Proxy_Type and RAS_Proxy_Type_Access, for DSA.
|
|
|
* g-socket.adb (To_Timeval): Fix incorrect conversion of
|
* g-socket.adb (To_Timeval): Fix incorrect conversion of
|
Selector_Duration to Timeval for the case of 0.0.
|
Selector_Duration to Timeval for the case of 0.0.
|
|
|
* exp_util.ads (Evolve_Or_Else): Fix overenthusiastic copy/paste of
|
* exp_util.ads (Evolve_Or_Else): Fix overenthusiastic copy/paste of
|
documentation from Evolve_And_Then.
|
documentation from Evolve_And_Then.
|
|
|
2004-07-06 Jose Ruiz
|
2004-07-06 Jose Ruiz
|
|
|
* s-taprop-tru64.adb, s-taprop-os2.adb,
|
* s-taprop-tru64.adb, s-taprop-os2.adb,
|
s-taprop-mingw.adb, s-taprop-posix.adb: Update comment.
|
s-taprop-mingw.adb, s-taprop-posix.adb: Update comment.
|
|
|
2004-07-06 Robert Dewar
|
2004-07-06 Robert Dewar
|
|
|
* s-osinte-hpux.ads, s-osinte-freebsd.ads,
|
* s-osinte-hpux.ads, s-osinte-freebsd.ads,
|
s-osinte-lynxos.ads, s-taprop-lynxos.adb, s-osinte-tru64.ads,
|
s-osinte-lynxos.ads, s-taprop-lynxos.adb, s-osinte-tru64.ads,
|
s-osinte-aix.ads, s-osinte-irix.ads, s-taprop-irix.adb,
|
s-osinte-aix.ads, s-osinte-irix.ads, s-taprop-irix.adb,
|
s-interr-sigaction.adb, s-taprop-irix-athread.adb,
|
s-interr-sigaction.adb, s-taprop-irix-athread.adb,
|
s-osinte-hpux-dce.adb, s-taprop-hpux-dce.adb,
|
s-osinte-hpux-dce.adb, s-taprop-hpux-dce.adb,
|
s-taprop-linux.adb, s-taprop-dummy.adb, s-taprop-solaris.adb,
|
s-taprop-linux.adb, s-taprop-dummy.adb, s-taprop-solaris.adb,
|
s-interr-vms.adb, s-osinte-vms.ads, s-taprop-vms.adb,
|
s-interr-vms.adb, s-osinte-vms.ads, s-taprop-vms.adb,
|
s-osinte-vxworks.ads, s-osprim-vxworks.adb, a-numaux-x86.adb,
|
s-osinte-vxworks.ads, s-osprim-vxworks.adb, a-numaux-x86.adb,
|
a-except.adb, a-exexpr.adb, a-intsig.adb, a-tags.adb,
|
a-except.adb, a-exexpr.adb, a-intsig.adb, a-tags.adb,
|
a-tags.ads, bindgen.ads, checks.adb, checks.adb,
|
a-tags.ads, bindgen.ads, checks.adb, checks.adb,
|
csets.ads, einfo.ads, einfo.ads, elists.adb, exp_ch4.adb,
|
csets.ads, einfo.ads, einfo.ads, elists.adb, exp_ch4.adb,
|
exp_ch7.adb, exp_dist.adb, exp_util.adb, freeze.adb,
|
exp_ch7.adb, exp_dist.adb, exp_util.adb, freeze.adb,
|
g-dynhta.adb, gnatmem.adb, g-regexp.adb, inline.adb,
|
g-dynhta.adb, gnatmem.adb, g-regexp.adb, inline.adb,
|
i-os2thr.ads, osint.adb, prj.adb, scng.adb, sem_cat.adb,
|
i-os2thr.ads, osint.adb, prj.adb, scng.adb, sem_cat.adb,
|
sem_ch10.adb, sem_ch12.adb, sem_ch4.adb, sem_ch7.adb,
|
sem_ch10.adb, sem_ch12.adb, sem_ch4.adb, sem_ch7.adb,
|
sem_ch8.adb, sem_disp.adb, sem_prag.adb, sem_res.adb,
|
sem_ch8.adb, sem_disp.adb, sem_prag.adb, sem_res.adb,
|
sem_type.adb, sem_type.ads, sem_warn.adb, s-ficobl.ads,
|
sem_type.adb, sem_type.ads, sem_warn.adb, s-ficobl.ads,
|
s-finimp.adb, s-htable.adb, sinfo.ads, sinput-l.ads,
|
s-finimp.adb, s-htable.adb, sinfo.ads, sinput-l.ads,
|
s-interr.adb, s-interr.ads, sprint.adb, s-tarest.adb,
|
s-interr.adb, s-interr.ads, sprint.adb, s-tarest.adb,
|
s-tasini.ads, s-taskin.ads, s-taskin.ads, uname.adb,
|
s-tasini.ads, s-taskin.ads, s-taskin.ads, uname.adb,
|
vms_data.ads: Minor reformatting,
|
vms_data.ads: Minor reformatting,
|
Fix bad box comment format.
|
Fix bad box comment format.
|
|
|
* gnat_rm.texi: Fix minor grammatical error
|
* gnat_rm.texi: Fix minor grammatical error
|
|
|
* sem_attr.adb, exp_attr.adb: New attribute Has_Access_Values
|
* sem_attr.adb, exp_attr.adb: New attribute Has_Access_Values
|
|
|
* sem_util.ads, sem_util.adb (Requires_Transient_Scope): Allow many
|
* sem_util.ads, sem_util.adb (Requires_Transient_Scope): Allow many
|
more cases of discriminated records to be recognized as not needing a
|
more cases of discriminated records to be recognized as not needing a
|
secondary stack.
|
secondary stack.
|
(Has_Access_Values): New function.
|
(Has_Access_Values): New function.
|
|
|
* snames.h, snames.adb, snames.ads: New attribute Has_Access_Values
|
* snames.h, snames.adb, snames.ads: New attribute Has_Access_Values
|
|
|
* cstand.adb, layout.ads, layout.adb, sem_ch13.ads: Change name
|
* cstand.adb, layout.ads, layout.adb, sem_ch13.ads: Change name
|
Set_Prim_Alignment to Set_Elem_Alignment (more accurate correspondence
|
Set_Prim_Alignment to Set_Elem_Alignment (more accurate correspondence
|
with LRM terminology).
|
with LRM terminology).
|
Change terminology in comments primitive type => elementary type.
|
Change terminology in comments primitive type => elementary type.
|
|
|
2004-07-06 Ed Schonberg
|
2004-07-06 Ed Schonberg
|
|
|
PR ada/15602
|
PR ada/15602
|
* sem_ch7.adb (Unit_Requires_Body): For a generic package, the formal
|
* sem_ch7.adb (Unit_Requires_Body): For a generic package, the formal
|
parameters do not impose any requirements on the presence of a body.
|
parameters do not impose any requirements on the presence of a body.
|
|
|
2004-07-06 Ed Schonberg
|
2004-07-06 Ed Schonberg
|
|
|
PR ada/15593
|
PR ada/15593
|
* sem_ch12.adb (Analyze_Package_Instantiation): If the generic is not a
|
* sem_ch12.adb (Analyze_Package_Instantiation): If the generic is not a
|
compilation unit and is in an open scope at the point of instantiation,
|
compilation unit and is in an open scope at the point of instantiation,
|
assume that a body may be present later.
|
assume that a body may be present later.
|
|
|
2004-07-06 Ed Schonberg
|
2004-07-06 Ed Schonberg
|
|
|
* sem_ch13.adb (Analyze_Attribute_Definition_Clause, case 'Size):
|
* sem_ch13.adb (Analyze_Attribute_Definition_Clause, case 'Size):
|
Improve error message when specified size is not supported.
|
Improve error message when specified size is not supported.
|
|
|
* sem_ch6.adb (Maybe_Primitive_Operation): A library-level subprogram
|
* sem_ch6.adb (Maybe_Primitive_Operation): A library-level subprogram
|
is never a primitive operation.
|
is never a primitive operation.
|
|
|
2004-07-05 Andreas Schwab
|
2004-07-05 Andreas Schwab
|
|
|
* ada-tree.h (TYPE_LEFT_JUSTIFIED_MODULAR_P): Use
|
* ada-tree.h (TYPE_LEFT_JUSTIFIED_MODULAR_P): Use
|
RECORD_OR_UNION_CHECK.
|
RECORD_OR_UNION_CHECK.
|
(TYPE_CONTAINS_TEMPLATE_P): Likewise.
|
(TYPE_CONTAINS_TEMPLATE_P): Likewise.
|
|
|
2004-07-04 Kelley Cook
|
2004-07-04 Kelley Cook
|
|
|
* Make-lang.in (doc/gnat_ugn_unw.texi): Eliminate explicit
|
* Make-lang.in (doc/gnat_ugn_unw.texi): Eliminate explicit
|
dependency on xgnatugn, instead build it via a submake.
|
dependency on xgnatugn, instead build it via a submake.
|
(ADA_INFOFILES): Add doc/gnat_ugn_unw.texi.
|
(ADA_INFOFILES): Add doc/gnat_ugn_unw.texi.
|
|
|
2004-07-04 Richard Henderson
|
2004-07-04 Richard Henderson
|
|
|
* utils2.c (gnat_mark_addressable): Don't put_var_into_stack.
|
* utils2.c (gnat_mark_addressable): Don't put_var_into_stack.
|
|
|
2004-07-01 Richard Henderson
|
2004-07-01 Richard Henderson
|
|
|
* trans.c (gnat_stabilize_reference): Don't handle RTL_EXPR.
|
* trans.c (gnat_stabilize_reference): Don't handle RTL_EXPR.
|
* utils.c (max_size): Likewise.
|
* utils.c (max_size): Likewise.
|
|
|
2004-06-28 Richard Kenner
|
2004-06-28 Richard Kenner
|
|
|
* decl.c: Remove calls to add_decl_expr, pushdecl, rest_of_compilation,
|
* decl.c: Remove calls to add_decl_expr, pushdecl, rest_of_compilation,
|
and rest_of_type_compilation; add arg to create_*_decl.
|
and rest_of_type_compilation; add arg to create_*_decl.
|
(annotate_decl_with_node): Deleted.
|
(annotate_decl_with_node): Deleted.
|
(gnat_to_gnu_entity, case E_Array_Type): Set location of fields.
|
(gnat_to_gnu_entity, case E_Array_Type): Set location of fields.
|
* gigi.h (get_decls, block_has_vars, pushdecl): Deleted.
|
* gigi.h (get_decls, block_has_vars, pushdecl): Deleted.
|
(get_current_block_context, gnat_pushdecl): New declarations.
|
(get_current_block_context, gnat_pushdecl): New declarations.
|
(gnat_init_stmt_group): Likewise.
|
(gnat_init_stmt_group): Likewise.
|
(create_var_decl, create_type_decl, create_subprog_decl): Add new arg.
|
(create_var_decl, create_type_decl, create_subprog_decl): Add new arg.
|
* misc.c (LANG_HOOKS_CLEAR_BINDING_STACK): Deleted.
|
* misc.c (LANG_HOOKS_CLEAR_BINDING_STACK): Deleted.
|
(LANG_HOOKS_GETDECLS, LANG_HOOKS_PUSHDECL): Deleted.
|
(LANG_HOOKS_GETDECLS, LANG_HOOKS_PUSHDECL): Deleted.
|
(gnat_init): Call gnat_init_stmt_group.
|
(gnat_init): Call gnat_init_stmt_group.
|
* trans.c (global_stmt_group, gnu_elab_proc_decl): New variables.
|
* trans.c (global_stmt_group, gnu_elab_proc_decl): New variables.
|
(gnu_pending_elaboration_list): Deleted.
|
(gnu_pending_elaboration_list): Deleted.
|
(mark_visited, mark_unvisited, gnat_init_stmt_group): New functions.
|
(mark_visited, mark_unvisited, gnat_init_stmt_group): New functions.
|
(gigi): Rearrange initialization calls and move some to last above.
|
(gigi): Rearrange initialization calls and move some to last above.
|
(gnat_to_gnu): If statement and not in procedure, go into elab proc.
|
(gnat_to_gnu): If statement and not in procedure, go into elab proc.
|
Delete calls to add_decl_expr; add arg to create_*_decl.
|
Delete calls to add_decl_expr; add arg to create_*_decl.
|
(gnat_to_gnu, case N_Loop): Recalculate side effects on COND_EXPR.
|
(gnat_to_gnu, case N_Loop): Recalculate side effects on COND_EXPR.
|
(gnat_to_gnu, case N_Subprogram_Body): Move some code to
|
(gnat_to_gnu, case N_Subprogram_Body): Move some code to
|
begin_subprog_body and call it.
|
begin_subprog_body and call it.
|
Don't push and pop ggc context.
|
Don't push and pop ggc context.
|
(gnat_to_gnu, case N_Compilation_Unit): Rework to support elab proc.
|
(gnat_to_gnu, case N_Compilation_Unit): Rework to support elab proc.
|
(add_stmt): Remove handling of DECL_EXPR from here.
|
(add_stmt): Remove handling of DECL_EXPR from here.
|
If not in function, mark visited.
|
If not in function, mark visited.
|
(add_decl_expr): Put global at top level.
|
(add_decl_expr): Put global at top level.
|
Check for cases of DECL_INITIAL we have to handle here.
|
Check for cases of DECL_INITIAL we have to handle here.
|
(process_type): Add extra arg to create_type_decl.
|
(process_type): Add extra arg to create_type_decl.
|
(build_unit_elab): Rework to just gimplify.
|
(build_unit_elab): Rework to just gimplify.
|
* utils.c (pending_elaborations, elist_stack, getdecls): Deleted.
|
* utils.c (pending_elaborations, elist_stack, getdecls): Deleted.
|
(block_has_vars, mark_visited, add_pending_elaborations): Likewise.
|
(block_has_vars, mark_visited, add_pending_elaborations): Likewise.
|
(get_pending_elaborations, pending_elaborations_p): Likewise.
|
(get_pending_elaborations, pending_elaborations_p): Likewise.
|
(push_pending_elaborations, pop_pending_elaborations): Likewise.
|
(push_pending_elaborations, pop_pending_elaborations): Likewise.
|
(get_elaboration_location, insert_elaboration_list): Likewise.
|
(get_elaboration_location, insert_elaboration_list): Likewise.
|
(gnat_binding_level): Renamed from ada_binding_level.
|
(gnat_binding_level): Renamed from ada_binding_level.
|
(init_gnat_to_gnu): Don't clear pending_elaborations.
|
(init_gnat_to_gnu): Don't clear pending_elaborations.
|
(global_bindings_p): Treat as global if no current_binding_level.
|
(global_bindings_p): Treat as global if no current_binding_level.
|
(set_current_block_context): New function.
|
(set_current_block_context): New function.
|
(gnat_pushdecl): Renamed from pushdecl; major rework.
|
(gnat_pushdecl): Renamed from pushdecl; major rework.
|
All callers changed.
|
All callers changed.
|
(create_type_decl, create_var_decl, create_subprog_decl): Add new arg.
|
(create_type_decl, create_var_decl, create_subprog_decl): Add new arg.
|
(finish_record_type): Call call pushdecl for stub decl.
|
(finish_record_type): Call call pushdecl for stub decl.
|
(function_nesting_depth): Deleted.
|
(function_nesting_depth): Deleted.
|
(begin_subprog_body): Delete obsolete code.
|
(begin_subprog_body): Delete obsolete code.
|
* utils2.c (build_call_alloc_dealloc): Add new arg to create_var_decl.
|
* utils2.c (build_call_alloc_dealloc): Add new arg to create_var_decl.
|
|
|
2004-06-28 Robert Dewar
|
2004-06-28 Robert Dewar
|
|
|
* mlib-tgt-tru64.adb, mlib-tgt-aix.adb, mlib-tgt-irix.adb,
|
* mlib-tgt-tru64.adb, mlib-tgt-aix.adb, mlib-tgt-irix.adb,
|
mlib-tgt-irix.adb, mlib-tgt-hpux.adb, mlib-tgt-linux.adb,
|
mlib-tgt-irix.adb, mlib-tgt-hpux.adb, mlib-tgt-linux.adb,
|
mlib-tgt-linux.adb, mlib-tgt-solaris.adb, mlib-tgt-solaris.adb,
|
mlib-tgt-linux.adb, mlib-tgt-solaris.adb, mlib-tgt-solaris.adb,
|
mlib-tgt-vms-alpha.adb, mlib-tgt-vms-alpha.adb, mlib-tgt-vms-ia64.adb,
|
mlib-tgt-vms-alpha.adb, mlib-tgt-vms-alpha.adb, mlib-tgt-vms-ia64.adb,
|
a-strmap.adb, a-strmap.ads, clean.adb: Minor reformatting
|
a-strmap.adb, a-strmap.ads, clean.adb: Minor reformatting
|
|
|
* exp_util.adb (Is_Possibly_Unaligned_Slice): Completely rewritten, to
|
* exp_util.adb (Is_Possibly_Unaligned_Slice): Completely rewritten, to
|
deal with problem of inefficient slices on machines with strict
|
deal with problem of inefficient slices on machines with strict
|
alignment, when the slice is a component of a composite.
|
alignment, when the slice is a component of a composite.
|
|
|
* checks.adb (Apply_Array_Size_Check): Do not special case 64-bit
|
* checks.adb (Apply_Array_Size_Check): Do not special case 64-bit
|
machines, we need the check there as well.
|
machines, we need the check there as well.
|
|
|
2004-06-28 Ed Schonberg
|
2004-06-28 Ed Schonberg
|
|
|
* exp_ch5.adb (Expand_Assign_Array): Use correct condition to
|
* exp_ch5.adb (Expand_Assign_Array): Use correct condition to
|
determine safe copying direction for overlapping slice assignments
|
determine safe copying direction for overlapping slice assignments
|
when component is controlled.
|
when component is controlled.
|
|
|
* sem_ch12.adb (Instantiate_Formal_Package): Implicit operations of a
|
* sem_ch12.adb (Instantiate_Formal_Package): Implicit operations of a
|
formal derived type in the actual for a formal package are visible in
|
formal derived type in the actual for a formal package are visible in
|
the enclosing instance.
|
the enclosing instance.
|
|
|
2004-06-28 Ed Schonberg
|
2004-06-28 Ed Schonberg
|
|
|
PR ada/15600
|
PR ada/15600
|
* sem_util.adb (Trace_Components): Diagnose properly an illegal
|
* sem_util.adb (Trace_Components): Diagnose properly an illegal
|
circularity involving a private type whose completion includes a
|
circularity involving a private type whose completion includes a
|
self-referential component.
|
self-referential component.
|
(Enter_Name): Use Is_Inherited_Operation to distinguish a source
|
(Enter_Name): Use Is_Inherited_Operation to distinguish a source
|
renaming or an instantiation from an implicit derived operation.
|
renaming or an instantiation from an implicit derived operation.
|
|
|
2004-06-28 Pascal Obry
|
2004-06-28 Pascal Obry
|
|
|
* mlib-tgt-mingw.adb: (Library_Exists_For): Remove "lib" prefix from
|
* mlib-tgt-mingw.adb: (Library_Exists_For): Remove "lib" prefix from
|
DLL.
|
DLL.
|
(Library_File_Name_For): Idem.
|
(Library_File_Name_For): Idem.
|
|
|
2004-06-28 Matthew Gingell
|
2004-06-28 Matthew Gingell
|
|
|
* g-traceb.ads: Add explanatory note on the format of addresses
|
* g-traceb.ads: Add explanatory note on the format of addresses
|
expected by addr2line.
|
expected by addr2line.
|
|
|
2004-06-28 Jerome Guitton
|
2004-06-28 Jerome Guitton
|
|
|
* Makefile.in: Force debugging information on s-tasdeb.adb,
|
* Makefile.in: Force debugging information on s-tasdeb.adb,
|
a-except.adb and s-assert.adb needed by the debugger.
|
a-except.adb and s-assert.adb needed by the debugger.
|
|
|
2004-06-28 Vincent Celier
|
2004-06-28 Vincent Celier
|
|
|
* make.adb (Collect_Arguments_And_Compile): Change Flag1 to
|
* make.adb (Collect_Arguments_And_Compile): Change Flag1 to
|
Need_To_Build_Lib.
|
Need_To_Build_Lib.
|
(Gnatmake): Ditto.
|
(Gnatmake): Ditto.
|
|
|
* mlib-prj.adb (Check_Library): Replace Flag1 with Need_To_Build_Lib
|
* mlib-prj.adb (Check_Library): Replace Flag1 with Need_To_Build_Lib
|
|
|
* prj.adb: Minor reformatting
|
* prj.adb: Minor reformatting
|
(Project_Empty): Change Flag1 to Need_To_Build_Lib. Remove Flag2.
|
(Project_Empty): Change Flag1 to Need_To_Build_Lib. Remove Flag2.
|
|
|
* prj.ads: Comment updates
|
* prj.ads: Comment updates
|
Minor reformatting
|
Minor reformatting
|
(Project_Data): Change Flag1 to Need_To_Build_Lib.
|
(Project_Data): Change Flag1 to Need_To_Build_Lib.
|
Remove Flag2: not used.
|
Remove Flag2: not used.
|
|
|
* prj-dect.adb (Parse_Declarative_Items): Accept "null" as a
|
* prj-dect.adb (Parse_Declarative_Items): Accept "null" as a
|
declaration.
|
declaration.
|
|
|
* gnat_ugn.texi: Put a "null;" declaration in one project file example
|
* gnat_ugn.texi: Put a "null;" declaration in one project file example
|
|
|
* gnat_rm.texi: Document Empty declarations "null;".
|
* gnat_rm.texi: Document Empty declarations "null;".
|
|
|
* makegpr.adb (Compile_Link_With_Gnatmake): Put the global archives in
|
* makegpr.adb (Compile_Link_With_Gnatmake): Put the global archives in
|
front of the linker options.
|
front of the linker options.
|
(Link_Foreign): Put the global archives and the libraries in front of
|
(Link_Foreign): Put the global archives and the libraries in front of
|
the linker options.
|
the linker options.
|
|
|
2004-06-28 Javier Miranda
|
2004-06-28 Javier Miranda
|
|
|
* rtsfind.adb: (Get_Unit_Name): Fix typo in comment
|
* rtsfind.adb: (Get_Unit_Name): Fix typo in comment
|
(RTU_Loaded): Code cleanup
|
(RTU_Loaded): Code cleanup
|
(Set_RTU_Loaded): New procedure to register as *loaded* explicitly
|
(Set_RTU_Loaded): New procedure to register as *loaded* explicitly
|
withed predefined units.
|
withed predefined units.
|
|
|
* rtsfind.ads (Set_RTU_Loaded): New procedure to register as *loaded*
|
* rtsfind.ads (Set_RTU_Loaded): New procedure to register as *loaded*
|
explicitly withed predefined units.
|
explicitly withed predefined units.
|
Fix typo in comment
|
Fix typo in comment
|
|
|
* sem_ch10.adb (Analyze_Compilation_Unit): Register as *loaded*
|
* sem_ch10.adb (Analyze_Compilation_Unit): Register as *loaded*
|
explicitly withed predefined units.
|
explicitly withed predefined units.
|
|
|
2004-06-26 Richard Kenner
|
2004-06-26 Richard Kenner
|
|
|
* ada-tree.def (DECL_STMT): Deleted.
|
* ada-tree.def (DECL_STMT): Deleted.
|
* ada-tree.h (IS_ADA_STMT): Now test against STMT_STMT.
|
* ada-tree.h (IS_ADA_STMT): Now test against STMT_STMT.
|
(DECL_STMT_VAR): Deleted.
|
(DECL_STMT_VAR): Deleted.
|
* decl.c: add_decl_stmt now add_decl_expr.
|
* decl.c: add_decl_stmt now add_decl_expr.
|
* gigi.h: Likewise.
|
* gigi.h: Likewise.
|
* trans.c: Likewise.
|
* trans.c: Likewise.
|
(gnat_gimplify_type_sizes, gnat_gimplify_one_sizepos): Deleted.
|
(gnat_gimplify_type_sizes, gnat_gimplify_one_sizepos): Deleted.
|
(gnat_to_gnu, case N_Subprogram_Body): Set cfun->function_end_locus.
|
(gnat_to_gnu, case N_Subprogram_Body): Set cfun->function_end_locus.
|
(add_stmt): Only handle padded type here.
|
(add_stmt): Only handle padded type here.
|
(add_stmt_with_node): Allow gnat_node to not be present.
|
(add_stmt_with_node): Allow gnat_node to not be present.
|
(gnat_gimplify_stmt, case USE_STMT): Set *STMT_P to null.
|
(gnat_gimplify_stmt, case USE_STMT): Set *STMT_P to null.
|
(gnat_gimplify_stmt, case DECL_STMT): Deleted.
|
(gnat_gimplify_stmt, case DECL_STMT): Deleted.
|
(gnat_stabilize_reference_1): If COMPONENT_REF of fat pointer,
|
(gnat_stabilize_reference_1): If COMPONENT_REF of fat pointer,
|
make a SAVE_EXPR for the entire fat pointer.
|
make a SAVE_EXPR for the entire fat pointer.
|
* utils.c (pushdecl): Walk a DECL_EXPR in global case.
|
* utils.c (pushdecl): Walk a DECL_EXPR in global case.
|
(create_index_type): Make a DECL_EXPR.
|
(create_index_type): Make a DECL_EXPR.
|
(end_subprog_body): Don't call allocate_struct_function here but
|
(end_subprog_body): Don't call allocate_struct_function here but
|
do clear cfun.
|
do clear cfun.
|
|
|
2004-06-25 Pascal Obry
|
2004-06-25 Pascal Obry
|
|
|
* makegpr.adb (Build_Library): Remove parameter Lib_Address and
|
* makegpr.adb (Build_Library): Remove parameter Lib_Address and
|
Relocatable from Build_Dynamic_Library call.
|
Relocatable from Build_Dynamic_Library call.
|
|
|
* gnat_ugn.texi: Change documentation about Library_Kind. Dynamic and
|
* gnat_ugn.texi: Change documentation about Library_Kind. Dynamic and
|
Relocatable are now synonym.
|
Relocatable are now synonym.
|
|
|
* Makefile.in: Use s-parame-mingw.adb on MingW platform.
|
* Makefile.in: Use s-parame-mingw.adb on MingW platform.
|
|
|
* mlib-prj.adb (Build_Library): Remove DLL_Address constant definition.
|
* mlib-prj.adb (Build_Library): Remove DLL_Address constant definition.
|
Remove parameter Lib_Address and Relocatable from Build_Dynamic_Library
|
Remove parameter Lib_Address and Relocatable from Build_Dynamic_Library
|
call.
|
call.
|
|
|
* mlib-tgt.ads, mlib-tgt.adb (Build_Dynamic_Library): Remove parameter
|
* mlib-tgt.ads, mlib-tgt.adb (Build_Dynamic_Library): Remove parameter
|
Lib_Address and Relocatable.
|
Lib_Address and Relocatable.
|
(Default_DLL_Address): Removed.
|
(Default_DLL_Address): Removed.
|
|
|
* mlib-tgt-tru64.adb, mlib-tgt-aix.adb, mlib-tgt-irix.adb,
|
* mlib-tgt-tru64.adb, mlib-tgt-aix.adb, mlib-tgt-irix.adb,
|
mlib-tgt-hpux.adb, mlib-tgt-linux.adb, mlib-tgt-solaris.adb,
|
mlib-tgt-hpux.adb, mlib-tgt-linux.adb, mlib-tgt-solaris.adb,
|
mlib-tgt-vms-alpha.adb, mlib-tgt-vms-ia64.adb, mlib-tgt-vxworks.adb:
|
mlib-tgt-vms-alpha.adb, mlib-tgt-vms-ia64.adb, mlib-tgt-vxworks.adb:
|
(Build_Dynamic_Library): Remove parameter Lib_Address and Relocatable.
|
(Build_Dynamic_Library): Remove parameter Lib_Address and Relocatable.
|
(Default_DLL_Address): Removed.
|
(Default_DLL_Address): Removed.
|
|
|
* mlib-tgt-mingw.adb: Ditto.
|
* mlib-tgt-mingw.adb: Ditto.
|
(Build_Dynamic_Library): Do not add "lib" prefix to the DLL name.
|
(Build_Dynamic_Library): Do not add "lib" prefix to the DLL name.
|
|
|
* s-taprop-mingw.adb (Create_Task): Use Adjust_Storage_Size to compute
|
* s-taprop-mingw.adb (Create_Task): Use Adjust_Storage_Size to compute
|
the initial thread stack size.
|
the initial thread stack size.
|
|
|
* a-strmap.ads: Move package L to private part as it is not used in
|
* a-strmap.ads: Move package L to private part as it is not used in
|
the spec. Found while reading code.
|
the spec. Found while reading code.
|
|
|
2004-06-25 Olivier Hainque
|
2004-06-25 Olivier Hainque
|
|
|
* tracebak.c: Introduce support for a GCC infrastructure based
|
* tracebak.c: Introduce support for a GCC infrastructure based
|
implementation of __gnat_backtrace.
|
implementation of __gnat_backtrace.
|
|
|
* raise.c: Don't rely on a C mapping of the GNAT_GCC_Exception record
|
* raise.c: Don't rely on a C mapping of the GNAT_GCC_Exception record
|
any more. Use accessors instead. This eases maintenance and relaxes
|
any more. Use accessors instead. This eases maintenance and relaxes
|
some alignment constraints.
|
some alignment constraints.
|
(_GNAT_Exception structure): Remove the Ada specific fields
|
(_GNAT_Exception structure): Remove the Ada specific fields
|
(EID_For, Adjust_N_Cleanups_For): New accessors, exported by
|
(EID_For, Adjust_N_Cleanups_For): New accessors, exported by
|
a-exexpr.adb.
|
a-exexpr.adb.
|
(is_handled_by, __gnat_eh_personality): Replace component references to
|
(is_handled_by, __gnat_eh_personality): Replace component references to
|
exception structure by use of the new accessors.
|
exception structure by use of the new accessors.
|
|
|
* init.c (__gnat_initialize): Adjust comments to match the just
|
* init.c (__gnat_initialize): Adjust comments to match the just
|
reverted meaning of the -static link-time option.
|
reverted meaning of the -static link-time option.
|
|
|
* adaint.c (convert_addresses): Arrange not to define a stub for
|
* adaint.c (convert_addresses): Arrange not to define a stub for
|
mips-irix any more, as we now want to rely on a real version from a
|
mips-irix any more, as we now want to rely on a real version from a
|
recent libaddr2line.
|
recent libaddr2line.
|
|
|
* a-exexpr.adb: Provide new accessors to a GNAT_GCC occurrence, so that
|
* a-exexpr.adb: Provide new accessors to a GNAT_GCC occurrence, so that
|
the personality routine can use them and not have to rely on a C
|
the personality routine can use them and not have to rely on a C
|
counterpart of the record anymore. This simplifies maintenance and
|
counterpart of the record anymore. This simplifies maintenance and
|
relaxes the constraint of having Standard'Maximum_Alignment match
|
relaxes the constraint of having Standard'Maximum_Alignment match
|
BIGGEST_ALIGNMENT.
|
BIGGEST_ALIGNMENT.
|
Update comments, and add a section on the common header alignment issue.
|
Update comments, and add a section on the common header alignment issue.
|
|
|
2004-06-25 Geert Bosch
|
2004-06-25 Geert Bosch
|
|
|
* a-ngelfu.adb (Tanh): Use full 20 digit precision for constants in
|
* a-ngelfu.adb (Tanh): Use full 20 digit precision for constants in
|
polynomial approximation. Fixes inconsistency with Cody/Waite algorithm.
|
polynomial approximation. Fixes inconsistency with Cody/Waite algorithm.
|
|
|
2004-06-25 Robert Dewar
|
2004-06-25 Robert Dewar
|
|
|
* gnat_rm.texi: Fix section on component clauses to indicate that the
|
* gnat_rm.texi: Fix section on component clauses to indicate that the
|
restriction on byte boundary placement still applies for bit packed
|
restriction on byte boundary placement still applies for bit packed
|
arrays.
|
arrays.
|
Add comment on stack usage from Initialize_Scalars
|
Add comment on stack usage from Initialize_Scalars
|
|
|
* gnat_ugn.texi: Add documentation for -gnatyLnnn
|
* gnat_ugn.texi: Add documentation for -gnatyLnnn
|
|
|
* stylesw.ads, stylesw.adb: Implement new -gnatyLnnn option for
|
* stylesw.ads, stylesw.adb: Implement new -gnatyLnnn option for
|
limiting nesting level.
|
limiting nesting level.
|
|
|
* usage.adb: Add line for -gnatyLnnn switch
|
* usage.adb: Add line for -gnatyLnnn switch
|
|
|
* g-debpoo.ads, xtreeprs.adb, sinput.ads, sem_ch13.ads,
|
* g-debpoo.ads, xtreeprs.adb, sinput.ads, sem_ch13.ads,
|
sem_ch13.adb, exp_aggr.adb: Minor reformatting
|
sem_ch13.adb, exp_aggr.adb: Minor reformatting
|
|
|
* sem_prag.adb (Process_Atomic_Shared_Volatile): Set Is_Atomic on base
|
* sem_prag.adb (Process_Atomic_Shared_Volatile): Set Is_Atomic on base
|
type as well as on the subtype. This corrects a problem in freeze in
|
type as well as on the subtype. This corrects a problem in freeze in
|
setting alignments of atomic types.
|
setting alignments of atomic types.
|
|
|
* sem_eval.ads: Minor comment typo fixed
|
* sem_eval.ads: Minor comment typo fixed
|
|
|
* par-util.adb (Push_Scope_Stack): Check for violation of max nesting
|
* par-util.adb (Push_Scope_Stack): Check for violation of max nesting
|
level. Minor reformatting.
|
level. Minor reformatting.
|
|
|
* fname.adb (Is_Predefined_File_Name): Require a letter after the
|
* fname.adb (Is_Predefined_File_Name): Require a letter after the
|
minus sign. This means that file names like a--b.adb will not be
|
minus sign. This means that file names like a--b.adb will not be
|
considered predefined.
|
considered predefined.
|
|
|
* freeze.adb: Propagate new flag Must_Be_On_Byte_Boundary to containing
|
* freeze.adb: Propagate new flag Must_Be_On_Byte_Boundary to containing
|
record Test new flag and give diagnostic for bad component clause.
|
record Test new flag and give diagnostic for bad component clause.
|
(Freeze_Entity): Set alignment of array from component alignment in
|
(Freeze_Entity): Set alignment of array from component alignment in
|
cases where this is safe to do.
|
cases where this is safe to do.
|
|
|
* exp_pakd.adb: Set new flag Must_Be_On_Byte_Boundary for large packed
|
* exp_pakd.adb: Set new flag Must_Be_On_Byte_Boundary for large packed
|
arrays.
|
arrays.
|
|
|
* cstand.adb: (Create_Standard): Set alignment of String to 1
|
* cstand.adb: (Create_Standard): Set alignment of String to 1
|
|
|
* einfo.ads, einfo.adb: Introduce new flag Must_Be_On_Byte_Boundary
|
* einfo.ads, einfo.adb: Introduce new flag Must_Be_On_Byte_Boundary
|
|
|
* exp_ch4.adb (Expand_Array_Equality): Improve efficiency of generated
|
* exp_ch4.adb (Expand_Array_Equality): Improve efficiency of generated
|
code in the common constrained array cases.
|
code in the common constrained array cases.
|
|
|
* a-storio.adb: Change implementation to avoid possible alignment
|
* a-storio.adb: Change implementation to avoid possible alignment
|
problems on machines requiring strict alignment (data should be moved
|
problems on machines requiring strict alignment (data should be moved
|
as type Buffer, not type Elmt).
|
as type Buffer, not type Elmt).
|
|
|
* checks.adb (Apply_Array_Size_Check): Improve these checks by
|
* checks.adb (Apply_Array_Size_Check): Improve these checks by
|
killing the overflow checks which we really do not need (64-bits is
|
killing the overflow checks which we really do not need (64-bits is
|
enough).
|
enough).
|
|
|
2004-06-25 Vincent Celier
|
2004-06-25 Vincent Celier
|
|
|
* makegpr.adb (Is_Included_In_Global_Archive): New Boolean function
|
* makegpr.adb (Is_Included_In_Global_Archive): New Boolean function
|
(Add_Archives.Recursive_Add_Archives): Call Add_Archive_Path
|
(Add_Archives.Recursive_Add_Archives): Call Add_Archive_Path
|
inconditionally for the main project.
|
inconditionally for the main project.
|
(Recursive_Add_Archives.Add_Archive_Path): New procedure
|
(Recursive_Add_Archives.Add_Archive_Path): New procedure
|
(Link_Executables.Check_Time_Stamps): New procedure
|
(Link_Executables.Check_Time_Stamps): New procedure
|
(Link_Executables.Link_Foreign): New procedure
|
(Link_Executables.Link_Foreign): New procedure
|
Changes made to reduce nesting level of this package
|
Changes made to reduce nesting level of this package
|
(Check): New procedure
|
(Check): New procedure
|
(Add_Switches): When not in quiet output, check that a switch is not
|
(Add_Switches): When not in quiet output, check that a switch is not
|
the concatenation of several valid switches. If it is, issue a warning.
|
the concatenation of several valid switches. If it is, issue a warning.
|
(Build_Global_Archive): If the global archive is rebuilt, linking need
|
(Build_Global_Archive): If the global archive is rebuilt, linking need
|
to be done.
|
to be done.
|
(Compile_Sources): Rebuilding a library archive does not imply
|
(Compile_Sources): Rebuilding a library archive does not imply
|
rebuilding the global archive.
|
rebuilding the global archive.
|
(Build_Global_Archive): New procedure
|
(Build_Global_Archive): New procedure
|
(Build_Library): New name for Build_Archive, now only for library
|
(Build_Library): New name for Build_Archive, now only for library
|
project
|
project
|
(Check_Archive_Builder): New procedure
|
(Check_Archive_Builder): New procedure
|
(Create_Global_Archive_Dependency_File): New procedure
|
(Create_Global_Archive_Dependency_File): New procedure
|
(Gprmake): Call Build_Global_Archive before linking
|
(Gprmake): Call Build_Global_Archive before linking
|
* makegpr.adb: Use Other_Sources_Present instead of Sources_Present
|
* makegpr.adb: Use Other_Sources_Present instead of Sources_Present
|
throughout.
|
throughout.
|
(Scan_Arg): Display the Copyright notice when -v is used
|
(Scan_Arg): Display the Copyright notice when -v is used
|
|
|
* gnat_ugn.texi: Document new switch -files= (VMS qualifier /FILES=)
|
* gnat_ugn.texi: Document new switch -files= (VMS qualifier /FILES=)
|
for gnatls.
|
for gnatls.
|
|
|
* vms_data.ads: Add qualifier /MAX_NESTING=nnn (-gnatyLnnn) for GNAT
|
* vms_data.ads: Add qualifier /MAX_NESTING=nnn (-gnatyLnnn) for GNAT
|
COMPILE.
|
COMPILE.
|
Add new GNAT LIST qualifier /FILES=
|
Add new GNAT LIST qualifier /FILES=
|
Added qualifier /DIRECTORY= to GNAT METRIC
|
Added qualifier /DIRECTORY= to GNAT METRIC
|
Added qualifier /FILES= to GNAT METRIC
|
Added qualifier /FILES= to GNAT METRIC
|
Added qualifier /FILES to GNAT PRETTY
|
Added qualifier /FILES to GNAT PRETTY
|
|
|
* switch.adb (Is_Front_End_Switch): Refine the test for --RTS or -fRTS,
|
* switch.adb (Is_Front_End_Switch): Refine the test for --RTS or -fRTS,
|
to take into account both versions of the switch.
|
to take into account both versions of the switch.
|
|
|
* switch-c.adb (Scan_Front_End_Switches): New switch -gnatez. Should
|
* switch-c.adb (Scan_Front_End_Switches): New switch -gnatez. Should
|
always be the last switch to the gcc driver. Disable switch storing so
|
always be the last switch to the gcc driver. Disable switch storing so
|
that switches automatically added by the gcc driver are not put in the
|
that switches automatically added by the gcc driver are not put in the
|
ALI file.
|
ALI file.
|
|
|
* prj.adb (Project_Empty): Take into account changes in components of
|
* prj.adb (Project_Empty): Take into account changes in components of
|
Project_Data.
|
Project_Data.
|
|
|
* prj.ads (Languages_Processed): New enumaration value All_Languages.
|
* prj.ads (Languages_Processed): New enumaration value All_Languages.
|
|
|
* prj.ads (Project_Data): Remove component Lib_Elaboration: never
|
* prj.ads (Project_Data): Remove component Lib_Elaboration: never
|
used. Split Boolean component Ada_Sources_Present in two Boolean
|
used. Split Boolean component Ada_Sources_Present in two Boolean
|
components Ada_Sources_Present and Other_Sources_Present.
|
components Ada_Sources_Present and Other_Sources_Present.
|
Minor reformatting
|
Minor reformatting
|
|
|
* prj-env.adb (For_All_Source_Dirs.Add): Use Ada_Sources_Present
|
* prj-env.adb (For_All_Source_Dirs.Add): Use Ada_Sources_Present
|
instead of Sources_Present.
|
instead of Sources_Present.
|
(Set_Ada_Paths.Add.Recursive_Add): Ditto
|
(Set_Ada_Paths.Add.Recursive_Add): Ditto
|
|
|
* prj-nmsc.adb: Minor reformatting
|
* prj-nmsc.adb: Minor reformatting
|
(Check_Ada_Naming_Scheme): New name of procedure Check_Naming_Scheme
|
(Check_Ada_Naming_Scheme): New name of procedure Check_Naming_Scheme
|
(Check_Ada_Naming_Scheme_Validity): New name of previous procedure
|
(Check_Ada_Naming_Scheme_Validity): New name of previous procedure
|
Check_Ada_Naming_Scheme.
|
Check_Ada_Naming_Scheme.
|
Change Sources_Present to Ada_Sources_Present or Other_Sources_Present
|
Change Sources_Present to Ada_Sources_Present or Other_Sources_Present
|
throughout.
|
throughout.
|
|
|
* prj-part.adb (Post_Parse_Context_Clause): New Boolean parameter
|
* prj-part.adb (Post_Parse_Context_Clause): New Boolean parameter
|
In_Limited.
|
In_Limited.
|
Make sure that all cycles where there is at least one "limited with"
|
Make sure that all cycles where there is at least one "limited with"
|
are detected.
|
are detected.
|
(Parse_Single_Project): New Boolean parameter In_Limited
|
(Parse_Single_Project): New Boolean parameter In_Limited
|
|
|
* prj-proc.adb (Recursive_Check): When Process_Languages is
|
* prj-proc.adb (Recursive_Check): When Process_Languages is
|
All_Languages, call first Prj.Nmsc.Ada_Check, then
|
All_Languages, call first Prj.Nmsc.Ada_Check, then
|
Prj.Nmsc.Other_Languages_Check.
|
Prj.Nmsc.Other_Languages_Check.
|
|
|
* prj-proc.adb (Process): Use Ada_Sources_Present or
|
* prj-proc.adb (Process): Use Ada_Sources_Present or
|
Other_Sources_Present (instead of Sources_Present) depending on
|
Other_Sources_Present (instead of Sources_Present) depending on
|
Process_Languages.
|
Process_Languages.
|
|
|
* lang-specs.h: Keep -g and -m switches in the same order, and as the
|
* lang-specs.h: Keep -g and -m switches in the same order, and as the
|
last switches.
|
last switches.
|
|
|
* lib.adb (Switch_Storing_Enabled): New global Boolean flag
|
* lib.adb (Switch_Storing_Enabled): New global Boolean flag
|
(Disable_Switch_Storing): New procedure. Set Switch_Storing_Enabled to
|
(Disable_Switch_Storing): New procedure. Set Switch_Storing_Enabled to
|
False.
|
False.
|
(Store_Compilation_Switch): Do nothing if Switch_Storing_Enabled is
|
(Store_Compilation_Switch): Do nothing if Switch_Storing_Enabled is
|
False.
|
False.
|
|
|
* lib.ads (Disable_Switch_Storing): New procedure.
|
* lib.ads (Disable_Switch_Storing): New procedure.
|
|
|
* make.adb: Modifications to reduce nesting level of this package.
|
* make.adb: Modifications to reduce nesting level of this package.
|
(Check_Standard_Library): New procedure
|
(Check_Standard_Library): New procedure
|
(Gnatmake.Check_Mains): New procedure
|
(Gnatmake.Check_Mains): New procedure
|
(Gnatmake.Create_Binder_Mapping_File): New procedure
|
(Gnatmake.Create_Binder_Mapping_File): New procedure
|
(Compile_Sources.Compile): Add switch -gnatez as the last option
|
(Compile_Sources.Compile): Add switch -gnatez as the last option
|
(Display): Never display -gnatez
|
(Display): Never display -gnatez
|
|
|
* Makefile.generic:
|
* Makefile.generic:
|
When using $(MAIN_OBJECT), always use $(OBJ_DIR)/$(MAIN_OBJECT)
|
When using $(MAIN_OBJECT), always use $(OBJ_DIR)/$(MAIN_OBJECT)
|
|
|
* gnatcmd.adb (Check_Project): New function
|
* gnatcmd.adb (Check_Project): New function
|
(Process_Link): New procedure to reduce nesting depth
|
(Process_Link): New procedure to reduce nesting depth
|
(Check_Files): New procedure to reduce the nesting depth.
|
(Check_Files): New procedure to reduce the nesting depth.
|
For GNAT METRIC, include the inherited sources in extending projects.
|
For GNAT METRIC, include the inherited sources in extending projects.
|
(GNATCmd): When GNAT LS is invoked with a project file and no files,
|
(GNATCmd): When GNAT LS is invoked with a project file and no files,
|
add the list of files from the sources of the project file. If this list
|
add the list of files from the sources of the project file. If this list
|
is too long, put it in a temp text files and use switch -files=
|
is too long, put it in a temp text files and use switch -files=
|
(Delete_Temp_Config_Files): Delete the temp text file that contains
|
(Delete_Temp_Config_Files): Delete the temp text file that contains
|
a list of source for gnatpp or gnatmetric, if one has been created.
|
a list of source for gnatpp or gnatmetric, if one has been created.
|
(GNATCmd): For GNAT METRIC and GNAT PRETTY, if the number of sources
|
(GNATCmd): For GNAT METRIC and GNAT PRETTY, if the number of sources
|
in the project file is too large, create a temporary text file that
|
in the project file is too large, create a temporary text file that
|
list them and pass it to the tool with "-files=".
|
list them and pass it to the tool with "-files=".
|
(GNATCmd): For GNAT METRIC add "-d=" as the first switch
|
(GNATCmd): For GNAT METRIC add "-d=" as the first switch
|
|
|
* gnatlink.adb (Gnatlink): Do not compile with --RTS= when the
|
* gnatlink.adb (Gnatlink): Do not compile with --RTS= when the
|
generated file is in not in Ada.
|
generated file is in not in Ada.
|
|
|
* gnatls.adb: Remove all parameters And_Save that are no longer used.
|
* gnatls.adb: Remove all parameters And_Save that are no longer used.
|
(Scan_Ls_Arg): Add processing for -files=
|
(Scan_Ls_Arg): Add processing for -files=
|
(Usage): Add line for -files=
|
(Usage): Add line for -files=
|
|
|
* g-os_lib.adb (On_Windows): New global constant Boolean flag
|
* g-os_lib.adb (On_Windows): New global constant Boolean flag
|
(Normalize_Pathname): When on Windows and the path starts with a
|
(Normalize_Pathname): When on Windows and the path starts with a
|
directory separator, make sure that the resulting path will start with
|
directory separator, make sure that the resulting path will start with
|
a drive letter.
|
a drive letter.
|
|
|
* clean.adb (Clean_Archive): New procedure
|
* clean.adb (Clean_Archive): New procedure
|
(Clean_Project): When there is non-Ada code, delete the global archive,
|
(Clean_Project): When there is non-Ada code, delete the global archive,
|
the archive dependency files, the object files and their dependency
|
the archive dependency files, the object files and their dependency
|
files, if they exist.
|
files, if they exist.
|
(Gnatclean): Call Prj.Pars.Parse for All_Languages, not for Ada only.
|
(Gnatclean): Call Prj.Pars.Parse for All_Languages, not for Ada only.
|
|
|
2004-06-25 Thomas Quinot
|
2004-06-25 Thomas Quinot
|
|
|
* sinfo.ads: Fix typo in comment.
|
* sinfo.ads: Fix typo in comment.
|
|
|
* sem_dist.adb (Process_Remote_AST_Attribute): Simplify code that uses
|
* sem_dist.adb (Process_Remote_AST_Attribute): Simplify code that uses
|
the TSS for remote access-to-subprogram types, since these TSS are
|
the TSS for remote access-to-subprogram types, since these TSS are
|
always present once the type has been analyzed.
|
always present once the type has been analyzed.
|
(RAS_E_Dereference): Same.
|
(RAS_E_Dereference): Same.
|
|
|
* sem_attr.adb (Analyze_Attribute): When analysis of an attribute
|
* sem_attr.adb (Analyze_Attribute): When analysis of an attribute
|
reference raises Bad_Attribute, mark the reference as analyzed so the
|
reference raises Bad_Attribute, mark the reference as analyzed so the
|
node (and any children resulting from rewrites that could have occurred
|
node (and any children resulting from rewrites that could have occurred
|
during the analysis that ultimately failed) is not analyzed again.
|
during the analysis that ultimately failed) is not analyzed again.
|
|
|
* exp_ch7.ads (Find_Final_List): Fix misaligned comment.
|
* exp_ch7.ads (Find_Final_List): Fix misaligned comment.
|
|
|
* exp_dist.adb: Minor comment fix.
|
* exp_dist.adb: Minor comment fix.
|
|
|
* exp_ch4.adb (Expand_N_Allocator): For an allocator whose expected
|
* exp_ch4.adb (Expand_N_Allocator): For an allocator whose expected
|
type is an anonymous access type, no unchecked deallocation of the
|
type is an anonymous access type, no unchecked deallocation of the
|
allocated object can occur. If the object is controlled, attach it with
|
allocated object can occur. If the object is controlled, attach it with
|
a count of 1. This allows attachment to the Global_Final_List, if
|
a count of 1. This allows attachment to the Global_Final_List, if
|
no other relevant list is available.
|
no other relevant list is available.
|
(Get_Allocator_Final_List): For an anonymous access type that is
|
(Get_Allocator_Final_List): For an anonymous access type that is
|
the type of a discriminant or record component, the corresponding
|
the type of a discriminant or record component, the corresponding
|
finalisation list is the one of the scope of the type.
|
finalisation list is the one of the scope of the type.
|
|
|
2004-06-25 Ed Schonberg
|
2004-06-25 Ed Schonberg
|
|
|
* sem_ch3.adb (Replace_Type): When computing the signature of an
|
* sem_ch3.adb (Replace_Type): When computing the signature of an
|
inherited subprogram, use the first subtype if the derived type
|
inherited subprogram, use the first subtype if the derived type
|
declaration has no constraint.
|
declaration has no constraint.
|
|
|
* exp_ch6.adb (Add_Call_By_Copy_Code): Check that formal is an array
|
* exp_ch6.adb (Add_Call_By_Copy_Code): Check that formal is an array
|
before applying previous optimization. Minor code cleanup.
|
before applying previous optimization. Minor code cleanup.
|
|
|
* exp_util.adb (Is_Possibly_Unaligned_Slice): If the component is
|
* exp_util.adb (Is_Possibly_Unaligned_Slice): If the component is
|
placed at the beginning of an unpacked record without explicit
|
placed at the beginning of an unpacked record without explicit
|
alignment, a slice of it will be aligned and does not need a copy when
|
alignment, a slice of it will be aligned and does not need a copy when
|
used as an actual.
|
used as an actual.
|
|
|
2004-06-25 Ed Schonberg
|
2004-06-25 Ed Schonberg
|
|
|
PR ada/15591
|
PR ada/15591
|
PR ada/15592
|
PR ada/15592
|
* sem_ch8.adb (Attribute_Renaming): Reject renaming if the attribute
|
* sem_ch8.adb (Attribute_Renaming): Reject renaming if the attribute
|
reference is written with expressions mimicking parameters.
|
reference is written with expressions mimicking parameters.
|
|
|
2004-06-25 Hristian Kirtchev
|
2004-06-25 Hristian Kirtchev
|
|
|
PR ada/15589
|
PR ada/15589
|
* sem_ch3.adb (Build_Derived_Record_Type): Add additional check to
|
* sem_ch3.adb (Build_Derived_Record_Type): Add additional check to
|
STEP 2a. The constraints of a full type declaration of a derived record
|
STEP 2a. The constraints of a full type declaration of a derived record
|
type are checked for conformance with those declared in the
|
type are checked for conformance with those declared in the
|
corresponding private extension declaration. The message
|
corresponding private extension declaration. The message
|
"not conformant with previous declaration" is emitted if an error is
|
"not conformant with previous declaration" is emitted if an error is
|
detected.
|
detected.
|
|
|
2004-06-25 Vasiliy Fofanov
|
2004-06-25 Vasiliy Fofanov
|
|
|
* g-traceb.ads: Document the need for -E binder switch in the spec.
|
* g-traceb.ads: Document the need for -E binder switch in the spec.
|
|
|
* g-trasym.ads: Document the need for -E binder switch in the spec.
|
* g-trasym.ads: Document the need for -E binder switch in the spec.
|
|
|
2004-06-25 Jose Ruiz
|
2004-06-25 Jose Ruiz
|
|
|
* sem_prag.adb: Add handling of pragma Detect_Blocking.
|
* sem_prag.adb: Add handling of pragma Detect_Blocking.
|
|
|
* snames.h, snames.ads, snames.adb: Add entry for pragma
|
* snames.h, snames.ads, snames.adb: Add entry for pragma
|
Detect_Blocking.
|
Detect_Blocking.
|
|
|
* s-rident.ads: Change reference to pragma Detect_Blocking.
|
* s-rident.ads: Change reference to pragma Detect_Blocking.
|
|
|
* targparm.ads, targparm.adb: Allow pragma Detect_Blocking in
|
* targparm.ads, targparm.adb: Allow pragma Detect_Blocking in
|
system.ads.
|
system.ads.
|
|
|
* opt.ads (Detect_Blocking): New Boolean variable (defaulted to False)
|
* opt.ads (Detect_Blocking): New Boolean variable (defaulted to False)
|
to indicate whether pragma Detect_Blocking is active.
|
to indicate whether pragma Detect_Blocking is active.
|
|
|
* par-prag.adb: Add entry for pragma Detect_Blocking.
|
* par-prag.adb: Add entry for pragma Detect_Blocking.
|
|
|
* rtsfind.adb (RTU_Loaded): Fix the temporary kludge to get past bug
|
* rtsfind.adb (RTU_Loaded): Fix the temporary kludge to get past bug
|
of not handling WITH.
|
of not handling WITH.
|
Note that this replaces the previous update which was incorrect.
|
Note that this replaces the previous update which was incorrect.
|
|
|
2004-06-25 Javier Miranda
|
2004-06-25 Javier Miranda
|
|
|
* sem_ch10.adb (Re_Install_Use_Clauses): Force the installation of the
|
* sem_ch10.adb (Re_Install_Use_Clauses): Force the installation of the
|
use-clauses to have a clean environment.
|
use-clauses to have a clean environment.
|
|
|
* sem_ch8.adb (Install_Use_Clauses): Addition of a new formal to force
|
* sem_ch8.adb (Install_Use_Clauses): Addition of a new formal to force
|
the installation of the use-clauses to stablish a clean environment in
|
the installation of the use-clauses to stablish a clean environment in
|
case of compilation of a separate unit; otherwise the call to
|
case of compilation of a separate unit; otherwise the call to
|
use_one_package is protected by the barrier Applicable_Use.
|
use_one_package is protected by the barrier Applicable_Use.
|
|
|
* sem_ch8.ads (Install_Use_Clauses): Addition of a new formal to force
|
* sem_ch8.ads (Install_Use_Clauses): Addition of a new formal to force
|
the installation of the use-clauses to stablish a clean environment in
|
the installation of the use-clauses to stablish a clean environment in
|
case of compilation of a separate unit.
|
case of compilation of a separate unit.
|
(End_Use_Clauses): Minor comment cleanup.
|
(End_Use_Clauses): Minor comment cleanup.
|
|
|
2004-06-25 Sergey Rybin
|
2004-06-25 Sergey Rybin
|
|
|
* gnat_ugn.texi: Add description of the gnatpp 'files' switch
|
* gnat_ugn.texi: Add description of the gnatpp 'files' switch
|
|
|
2004-06-23 Richard Henderson
|
2004-06-23 Richard Henderson
|
|
|
* trans.c (gnat_gimplify_stmt): Update gimplify_type_sizes call.
|
* trans.c (gnat_gimplify_stmt): Update gimplify_type_sizes call.
|
|
|
2004-06-20 Richard Kenner
|
2004-06-20 Richard Kenner
|
|
|
* decl.c (elaborate_expression, elaborate_expression_1): Arguments
|
* decl.c (elaborate_expression, elaborate_expression_1): Arguments
|
now bool instead of int.
|
now bool instead of int.
|
(gnat_to_gnu_entity, elaborate_expression_1): New arg to COMPONENT_REF.
|
(gnat_to_gnu_entity, elaborate_expression_1): New arg to COMPONENT_REF.
|
* trans.c (gnu_switch_label_stack): New function.
|
* trans.c (gnu_switch_label_stack): New function.
|
(gnat_to_gnu, N_Object_Renaming_Declaration): Result is what the
|
(gnat_to_gnu, N_Object_Renaming_Declaration): Result is what the
|
elaboration of renamed entity returns.
|
elaboration of renamed entity returns.
|
(gnat_to_gnu, case N_Case_Statement): Add branches to end label.
|
(gnat_to_gnu, case N_Case_Statement): Add branches to end label.
|
(add_decl_stmt): Don't add TYPE_DECL for UNCONSTRAINED_ARRAY_TYPE.
|
(add_decl_stmt): Don't add TYPE_DECL for UNCONSTRAINED_ARRAY_TYPE.
|
(gnat_gimplify_stmt): Use alloc_stmt_list, not build_empty_stmt.
|
(gnat_gimplify_stmt): Use alloc_stmt_list, not build_empty_stmt.
|
(gnat_gimplify_stmt, case DECL_STMT): gimplify DECL_SIZE and
|
(gnat_gimplify_stmt, case DECL_STMT): gimplify DECL_SIZE and
|
DECL_SIZE_UNIT and simplify variable-sized case.
|
DECL_SIZE_UNIT and simplify variable-sized case.
|
(gnat_gimplify_type_sizes, gnat_gimplify_one_sizepos): Deleted.
|
(gnat_gimplify_type_sizes, gnat_gimplify_one_sizepos): Deleted.
|
Callers changes to call gimplify_type_sizes and gimplify_one_sizepos.
|
Callers changes to call gimplify_type_sizes and gimplify_one_sizepos.
|
(gnat_stabilize_reference): Add arg to COMPONENT_REF.
|
(gnat_stabilize_reference): Add arg to COMPONENT_REF.
|
(build_unit_elab): Disable for now.
|
(build_unit_elab): Disable for now.
|
* utils.c (mark_visited): New function.
|
* utils.c (mark_visited): New function.
|
(pushdecl): Walk tree to call it for global decl.
|
(pushdecl): Walk tree to call it for global decl.
|
(update_pointer_to): Update all variants of pointer and ref types.
|
(update_pointer_to): Update all variants of pointer and ref types.
|
Add arg to COMPONENT_REF.
|
Add arg to COMPONENT_REF.
|
(convert): Likewise.
|
(convert): Likewise.
|
Move check for converting between variants lower down.
|
Move check for converting between variants lower down.
|
* utils2.c (build_simple_component_ref): Add arg to COMPONENT_REF.
|
* utils2.c (build_simple_component_ref): Add arg to COMPONENT_REF.
|
(build_allocator): Don't force type of MODIFY_EXPR.
|
(build_allocator): Don't force type of MODIFY_EXPR.
|
(gnat_mark_addressable, case VAR_DECL): Unconditionally call
|
(gnat_mark_addressable, case VAR_DECL): Unconditionally call
|
put_var_into_stack.
|
put_var_into_stack.
|
|
|
2004-06-14 Richard Kenner
|
2004-06-14 Richard Kenner
|
|
|
* ada-tree.def (LOOP_STMT, EXIT_STMT): Update documentation.
|
* ada-tree.def (LOOP_STMT, EXIT_STMT): Update documentation.
|
* ada-tree.h (EXIT_STMT_LABEL): Renamed from EXIT_STMT_LOOP.
|
* ada-tree.h (EXIT_STMT_LABEL): Renamed from EXIT_STMT_LOOP.
|
* decl.c (gnat_to_gnu_entity): Also set force_global for imported
|
* decl.c (gnat_to_gnu_entity): Also set force_global for imported
|
subprograms.
|
subprograms.
|
* trans.c (gnu_loop_label_stack): Renamed from gnu_loop_stmt_stack;
|
* trans.c (gnu_loop_label_stack): Renamed from gnu_loop_stmt_stack;
|
all callers changed.
|
all callers changed.
|
(gnat_to_gnu, case N_Loop_Statement, case N_Exit_Statement): Change
|
(gnat_to_gnu, case N_Loop_Statement, case N_Exit_Statement): Change
|
the way that EXIT_STMT finds the loop label.
|
the way that EXIT_STMT finds the loop label.
|
(gnat_gimplify_stmt, case LOOP_STMT, EXIT_STMT): Likewise.
|
(gnat_gimplify_stmt, case LOOP_STMT, EXIT_STMT): Likewise.
|
(gnat_gimplify_stmt, case DECL_STMT): Handle variable-sized decls here.
|
(gnat_gimplify_stmt, case DECL_STMT): Handle variable-sized decls here.
|
(add_stmt): Use annotate_with_locus insted of setting directly.
|
(add_stmt): Use annotate_with_locus insted of setting directly.
|
(pos_to_construct): Set TREE_PURPOSE of each entry to index.
|
(pos_to_construct): Set TREE_PURPOSE of each entry to index.
|
(gnat_stabilize_reference, case ARRAY_RANGE_REF): Merge with ARRAY_REF.
|
(gnat_stabilize_reference, case ARRAY_RANGE_REF): Merge with ARRAY_REF.
|
* utils.c (gnat_install_builtins): Install __builtin_memcmp.
|
* utils.c (gnat_install_builtins): Install __builtin_memcmp.
|
(build_vms_descriptor): Add extra args to ARRAY_REF.
|
(build_vms_descriptor): Add extra args to ARRAY_REF.
|
(convert): Use VIEW_CONVERT_EXPR between aggregate types.
|
(convert): Use VIEW_CONVERT_EXPR between aggregate types.
|
* utils2.c (gnat_truthvalue_conversion, case INTEGER_CST, REAL_CST):
|
* utils2.c (gnat_truthvalue_conversion, case INTEGER_CST, REAL_CST):
|
New cases.
|
New cases.
|
(build_binary_op): Don't make explicit CONVERT_EXPR.
|
(build_binary_op): Don't make explicit CONVERT_EXPR.
|
Add extra rgs to ARRAY_REF.
|
Add extra rgs to ARRAY_REF.
|
|
|
2004-06-14 Pascal Obry
|
2004-06-14 Pascal Obry
|
|
|
* gnat_ugn.texi: Document relocatable vs. dynamic Library_Kind on
|
* gnat_ugn.texi: Document relocatable vs. dynamic Library_Kind on
|
Windows. Fix minor typo.
|
Windows. Fix minor typo.
|
|
|
* mlib-tgt-mingw.adb: New implementation using the GCC -shared option
|
* mlib-tgt-mingw.adb: New implementation using the GCC -shared option
|
which is now supported on Windows. With this implementation using the
|
which is now supported on Windows. With this implementation using the
|
Library Project feature is no different on Windows than on UNIX.
|
Library Project feature is no different on Windows than on UNIX.
|
|
|
2004-06-14 Vincent Celier
|
2004-06-14 Vincent Celier
|
|
|
* makegpr.adb (Compile_Sources): Nothing to do when there are no
|
* makegpr.adb (Compile_Sources): Nothing to do when there are no
|
non-Ada sources.
|
non-Ada sources.
|
|
|
* mlib-tgt-vxworks.adb (Library_Exists_For): Remove incorrect comment
|
* mlib-tgt-vxworks.adb (Library_Exists_For): Remove incorrect comment
|
|
|
* prj-part.adb (Parse_Single_Project): When a duplicate project name is
|
* prj-part.adb (Parse_Single_Project): When a duplicate project name is
|
found, show the project name and the path of the previously parsed
|
found, show the project name and the path of the previously parsed
|
project file.
|
project file.
|
|
|
2004-06-14 Ed Schonberg
|
2004-06-14 Ed Schonberg
|
|
|
* exp_ch6.adb (Add_Call_By_Copy_Code): For an out-parameter that is an
|
* exp_ch6.adb (Add_Call_By_Copy_Code): For an out-parameter that is an
|
array, avoid copying the actual before the call.
|
array, avoid copying the actual before the call.
|
|
|
2004-06-14 Thomas Quinot
|
2004-06-14 Thomas Quinot
|
|
|
* g-debpoo.adb: Remove alignment assumptions from GNAT.Debug_Pools.
|
* g-debpoo.adb: Remove alignment assumptions from GNAT.Debug_Pools.
|
Instead, allocate memory on worst-case alignment assumptions, and then
|
Instead, allocate memory on worst-case alignment assumptions, and then
|
return an aligned address within the allocated zone.
|
return an aligned address within the allocated zone.
|
|
|
2004-06-14 Robert Dewar
|
2004-06-14 Robert Dewar
|
|
|
* bindgen.adb (Gen_Adainit_Ada): Do not generate external references to
|
* bindgen.adb (Gen_Adainit_Ada): Do not generate external references to
|
elab entities in predefined units in No_Run_Time_Mode.
|
elab entities in predefined units in No_Run_Time_Mode.
|
(Gen_Adainit_C): Same fix
|
(Gen_Adainit_C): Same fix
|
(Gen_Elab_Calls_Ada): Do not generate calls to elaborate predefined
|
(Gen_Elab_Calls_Ada): Do not generate calls to elaborate predefined
|
units in No_Run_Time_Mode
|
units in No_Run_Time_Mode
|
(Gen_Elab_Calls_C): Same fix
|
(Gen_Elab_Calls_C): Same fix
|
|
|
* symbols-vms-alpha.adb: Minor reformatting
|
* symbols-vms-alpha.adb: Minor reformatting
|
|
|
* g-debpoo.ads: Minor reformatting
|
* g-debpoo.ads: Minor reformatting
|
|
|
* lib.adb (In_Same_Extended_Unit): Version working on node id's
|
* lib.adb (In_Same_Extended_Unit): Version working on node id's
|
|
|
* lib.ads (In_Same_Extended_Unit): Version working on node id's
|
* lib.ads (In_Same_Extended_Unit): Version working on node id's
|
|
|
* lib-xref.adb: Minor cleanup, use new version of In_Same_Extended_Unit
|
* lib-xref.adb: Minor cleanup, use new version of In_Same_Extended_Unit
|
working on nodes.
|
working on nodes.
|
|
|
* make.adb: Minor reformatting
|
* make.adb: Minor reformatting
|
|
|
* par-ch12.adb: Minor reformatting
|
* par-ch12.adb: Minor reformatting
|
|
|
* par-prag.adb: Add dummy entry for pragma Profile_Warnings
|
* par-prag.adb: Add dummy entry for pragma Profile_Warnings
|
|
|
* prj-strt.adb: Minor reformatting
|
* prj-strt.adb: Minor reformatting
|
|
|
* restrict.ads, restrict.adb: Redo handling of profile restrictions to
|
* restrict.ads, restrict.adb: Redo handling of profile restrictions to
|
be more general.
|
be more general.
|
|
|
* sem_attr.adb: Minor reformatting
|
* sem_attr.adb: Minor reformatting
|
|
|
* sem_ch7.adb: Minor reformatting
|
* sem_ch7.adb: Minor reformatting
|
|
|
* sem_elab.adb (Check_A_Call): Deal with problem of calling init proc
|
* sem_elab.adb (Check_A_Call): Deal with problem of calling init proc
|
for type in the same unit as the object declaration.
|
for type in the same unit as the object declaration.
|
|
|
* sem_prag.adb (Check_Arg_Is_External_Name): New procedure, allows
|
* sem_prag.adb (Check_Arg_Is_External_Name): New procedure, allows
|
static string expressions and not just string literals.
|
static string expressions and not just string literals.
|
Minor reformatting
|
Minor reformatting
|
(Set_Warning): Reset restriction warning flag for restriction pragma
|
(Set_Warning): Reset restriction warning flag for restriction pragma
|
Implement pragma Profile_Warnings
|
Implement pragma Profile_Warnings
|
Implement pragma Profile (Restricted)
|
Implement pragma Profile (Restricted)
|
Give obolescent messages for old restrictions and pragmas
|
Give obolescent messages for old restrictions and pragmas
|
|
|
* snames.h, snames.ads, snames.adb: Add new entry for pragma
|
* snames.h, snames.ads, snames.adb: Add new entry for pragma
|
Profile_Warnings.
|
Profile_Warnings.
|
|
|
* s-rident.ads: Add declarations for restrictions required by profile
|
* s-rident.ads: Add declarations for restrictions required by profile
|
Restricted and profile Ravenscar.
|
Restricted and profile Ravenscar.
|
|
|
* targparm.ads, targparm.adb: Allow pragma Profile in system.ads
|
* targparm.ads, targparm.adb: Allow pragma Profile in system.ads
|
|
|
* gnat_ugn.texi: Correct some missing entries in the list of GNAT
|
* gnat_ugn.texi: Correct some missing entries in the list of GNAT
|
configuration pragmas.
|
configuration pragmas.
|
|
|
2004-06-11 Vincent Celier
|
2004-06-11 Vincent Celier
|
|
|
* mlib-tgt-vms-alpha.adb (Build_Dynamic_Library): Issue switch -R to
|
* mlib-tgt-vms-alpha.adb (Build_Dynamic_Library): Issue switch -R to
|
gnatsym, when symbol policy is Restricted.
|
gnatsym, when symbol policy is Restricted.
|
|
|
* mlib-tgt-vms-ia64.adb (Build_Dynamic_Library): Issue switch -R to
|
* mlib-tgt-vms-ia64.adb (Build_Dynamic_Library): Issue switch -R to
|
gnatsym, when symbol policy is Restricted.
|
gnatsym, when symbol policy is Restricted.
|
|
|
* symbols-vms-alpha.adb (Initialize): When symbol policy is Restricted,
|
* symbols-vms-alpha.adb (Initialize): When symbol policy is Restricted,
|
read the symbol file.
|
read the symbol file.
|
(Finalize): Fail in symbol policy Restricted if a symbol in the original
|
(Finalize): Fail in symbol policy Restricted if a symbol in the original
|
symbol file is not in the object files. Do not create a new symbol file
|
symbol file is not in the object files. Do not create a new symbol file
|
when symbol policy is Restricted.
|
when symbol policy is Restricted.
|
|
|
* gnatbind.adb (Gnatbind): Initialize Snames, because Snames is used
|
* gnatbind.adb (Gnatbind): Initialize Snames, because Snames is used
|
in Scng.
|
in Scng.
|
|
|
* gnatsym.adb (Parse_Vmd_Line): Process new switch -R for symbol policy
|
* gnatsym.adb (Parse_Vmd_Line): Process new switch -R for symbol policy
|
Restricted.
|
Restricted.
|
(Usage): Line for new switch -R
|
(Usage): Line for new switch -R
|
|
|
* make.adb (Initialize): When the platform is not VMS, add the
|
* make.adb (Initialize): When the platform is not VMS, add the
|
directory where gnatmake is invoked in the front of the path, if
|
directory where gnatmake is invoked in the front of the path, if
|
gnatmake is invoked with directory information. Change the Scan_Args
|
gnatmake is invoked with directory information. Change the Scan_Args
|
while loop to a for loop.
|
while loop to a for loop.
|
(Recursive_Compute_Depth): Remove parameter Visited. Improve efficiency:
|
(Recursive_Compute_Depth): Remove parameter Visited. Improve efficiency:
|
if Depth is equal or greater than the proposed depth, there is nothing
|
if Depth is equal or greater than the proposed depth, there is nothing
|
to do.
|
to do.
|
(Initialize): Call Recursive_Compute_Depth with initial Depth equal to 1
|
(Initialize): Call Recursive_Compute_Depth with initial Depth equal to 1
|
instead of 0.
|
instead of 0.
|
|
|
* prj.ads: Add new symbol policy Restricted.
|
* prj.ads: Add new symbol policy Restricted.
|
|
|
* prj-dect.adb (Parse_Case_Construction): Call End_Case_Construction
|
* prj-dect.adb (Parse_Case_Construction): Call End_Case_Construction
|
with the new parameters Check_All_Labels and Case_Location.
|
with the new parameters Check_All_Labels and Case_Location.
|
|
|
* prj-nmsc.adb (Ada_Check): Process new symbol policy Restricted
|
* prj-nmsc.adb (Ada_Check): Process new symbol policy Restricted
|
(Library_Symbol_File needs to be defined).
|
(Library_Symbol_File needs to be defined).
|
|
|
* prj-strt.adb (End_Case_Construction): New parameters Check_All_Labels
|
* prj-strt.adb (End_Case_Construction): New parameters Check_All_Labels
|
and Case_Location If Check_All_Labels is True, check that all values of
|
and Case_Location If Check_All_Labels is True, check that all values of
|
the string type are used, and output warning(s) if they are not.
|
the string type are used, and output warning(s) if they are not.
|
|
|
* prj-strt.ads (End_Case_Construction): New parameters Check_All_Labels
|
* prj-strt.ads (End_Case_Construction): New parameters Check_All_Labels
|
and Case_Location.
|
and Case_Location.
|
|
|
* gnat_ugn.texi: Reorder subclauses in menus "Switches for gcc"
|
* gnat_ugn.texi: Reorder subclauses in menus "Switches for gcc"
|
|
|
* gnat_ugn.texi: Update documentation about the library directory in
|
* gnat_ugn.texi: Update documentation about the library directory in
|
Library Projects.
|
Library Projects.
|
|
|
* makegpr.adb (Display_Command): In verbose mode, also display the
|
* makegpr.adb (Display_Command): In verbose mode, also display the
|
value of the CPATH env var, when the compiler is gcc.
|
value of the CPATH env var, when the compiler is gcc.
|
(Initialize): Change the Scan_Args while loop to a for loop
|
(Initialize): Change the Scan_Args while loop to a for loop
|
(Compile_Individual_Sources): Change directory to object directory
|
(Compile_Individual_Sources): Change directory to object directory
|
before compilations.
|
before compilations.
|
|
|
* symbols.ads: New symbol policy Restricted.
|
* symbols.ads: New symbol policy Restricted.
|
|
|
2004-06-11 Olivier Hainque
|
2004-06-11 Olivier Hainque
|
|
|
* a-except.adb (Raise_After_Setup family): Remove. The responsibility
|
* a-except.adb (Raise_After_Setup family): Remove. The responsibility
|
is now taken care of internally in the Exception_Propagation package
|
is now taken care of internally in the Exception_Propagation package
|
and does not require clients assistance any more.
|
and does not require clients assistance any more.
|
|
|
* a-exexpr.adb (Is_Setup_And_Not_Propagated,
|
* a-exexpr.adb (Is_Setup_And_Not_Propagated,
|
Set_Setup_And_Not_Propagated, and Clear_Setup_And_Not_Propagated): New
|
Set_Setup_And_Not_Propagated, and Clear_Setup_And_Not_Propagated): New
|
functions. Helpers to maintain a predicate required in the handling of
|
functions. Helpers to maintain a predicate required in the handling of
|
occurrence transfer between tasks.
|
occurrence transfer between tasks.
|
This is now handled internally and does not require clients assistance
|
This is now handled internally and does not require clients assistance
|
for the setup/propagate separation anymore.
|
for the setup/propagate separation anymore.
|
(Setup_Exception, Propagate_Exception): Simplify the Private_Data
|
(Setup_Exception, Propagate_Exception): Simplify the Private_Data
|
allocation strategy, handle the Setup_And_Not_Propagated predicate and
|
allocation strategy, handle the Setup_And_Not_Propagated predicate and
|
document.
|
document.
|
|
|
* s-taenca.adb (Check_Exception): Use raise_with_msg instead of
|
* s-taenca.adb (Check_Exception): Use raise_with_msg instead of
|
raise_after_setup, now that everything is handled internally within the
|
raise_after_setup, now that everything is handled internally within the
|
setup/propagation engine.
|
setup/propagation engine.
|
|
|
2004-06-11 Hristian Kirtchev
|
2004-06-11 Hristian Kirtchev
|
|
|
* exp_ch6.adb (Expand_Inlined_Call): Add function Formal_Is_Used_Once.
|
* exp_ch6.adb (Expand_Inlined_Call): Add function Formal_Is_Used_Once.
|
Add additional conditions for the case of an actual being a simple
|
Add additional conditions for the case of an actual being a simple
|
name or literal. Improve inlining by preventing the generation
|
name or literal. Improve inlining by preventing the generation
|
of temporaries with a short lifetime (one use).
|
of temporaries with a short lifetime (one use).
|
|
|
2004-06-11 Hristian Kirtchev
|
2004-06-11 Hristian Kirtchev
|
|
|
PR ada/15587
|
PR ada/15587
|
* einfo.ads: Minor comment updates for Has_Completion and
|
* einfo.ads: Minor comment updates for Has_Completion and
|
E_Constant list of flags.
|
E_Constant list of flags.
|
|
|
* sem_ch3.adb (Analyze_Object_Declaration): Full constant declarations
|
* sem_ch3.adb (Analyze_Object_Declaration): Full constant declarations
|
and constant redeclarations now set the Has_Completion flag of their
|
and constant redeclarations now set the Has_Completion flag of their
|
defining identifiers.
|
defining identifiers.
|
|
|
* sem_ch7.adb (Analyze_Package_Spec): Add procedure
|
* sem_ch7.adb (Analyze_Package_Spec): Add procedure
|
Inspect_Deferred_Constant_Completion.
|
Inspect_Deferred_Constant_Completion.
|
Used to detect private deferred constants that have not been completed
|
Used to detect private deferred constants that have not been completed
|
either by a constant redeclaration or pragma Import. Emits error message
|
either by a constant redeclaration or pragma Import. Emits error message
|
"constant declaration requires initialization expression".
|
"constant declaration requires initialization expression".
|
|
|
* sem_prag.adb (Process_Import_Or_Interface): An Import pragma now
|
* sem_prag.adb (Process_Import_Or_Interface): An Import pragma now
|
completes a deferred constant.
|
completes a deferred constant.
|
|
|
2004-06-11 Geert Bosch
|
2004-06-11 Geert Bosch
|
|
|
* eval_fat.adb (Decompose_Int): Fix rounding of negative numbers.
|
* eval_fat.adb (Decompose_Int): Fix rounding of negative numbers.
|
|
|
* s-fatgen.adb (Gradual_Scaling): Correct off-by-one error in
|
* s-fatgen.adb (Gradual_Scaling): Correct off-by-one error in
|
calculating exponent for scaling denormal numbers.
|
calculating exponent for scaling denormal numbers.
|
(Leading_Part): Properly raise Constraint_Error for zero or negative
|
(Leading_Part): Properly raise Constraint_Error for zero or negative
|
Adjustment.
|
Adjustment.
|
(Remainder): Properly raise Constraint_Error for zero divisor.
|
(Remainder): Properly raise Constraint_Error for zero divisor.
|
|
|
2004-06-11 Thomas Quinot
|
2004-06-11 Thomas Quinot
|
|
|
* sem_util.adb: Minor reformatting.
|
* sem_util.adb: Minor reformatting.
|
|
|
* exp_ch2.adb (Expand_Entry_Parameter): Generate an explicit
|
* exp_ch2.adb (Expand_Entry_Parameter): Generate an explicit
|
dereference when accessing the entry parameter record.
|
dereference when accessing the entry parameter record.
|
(Check_Array_Type): Always check for possible implicit dereference.
|
(Check_Array_Type): Always check for possible implicit dereference.
|
(maybe_implicit_dereference): Rename to check_no_implicit_derefence.
|
(maybe_implicit_dereference): Rename to check_no_implicit_derefence.
|
Abort if a pointer is still present (denoting that an implicit
|
Abort if a pointer is still present (denoting that an implicit
|
dereference was left in the tree by the front-end).
|
dereference was left in the tree by the front-end).
|
|
|
* sem_attr.adb (Expand_Entry_Parameter): Generate an explicit
|
* sem_attr.adb (Expand_Entry_Parameter): Generate an explicit
|
dereference when accessing the entry parameter record.
|
dereference when accessing the entry parameter record.
|
(Check_Array_Type): Always check for possible implicit dereference.
|
(Check_Array_Type): Always check for possible implicit dereference.
|
(maybe_implicit_dereference): Rename to check_no_implicit_derefence.
|
(maybe_implicit_dereference): Rename to check_no_implicit_derefence.
|
Abort if a pointer is still present (denoting that an implicit
|
Abort if a pointer is still present (denoting that an implicit
|
dereference was left in the tree by the front-end).
|
dereference was left in the tree by the front-end).
|
|
|
2004-06-11 Emmanuel Briot
|
2004-06-11 Emmanuel Briot
|
|
|
* g-debpoo.adb (Deallocate, Dereference): Add prefix "error:" to error
|
* g-debpoo.adb (Deallocate, Dereference): Add prefix "error:" to error
|
message, like the compiler itself does. Easier to parse the output.
|
message, like the compiler itself does. Easier to parse the output.
|
|
|
* g-debpoo.ads: (Allocate, Deallocate, Dereference): Add comments.
|
* g-debpoo.ads: (Allocate, Deallocate, Dereference): Add comments.
|
|
|
* gnat_ugn.texi (gnatxref, gnatfind): Clarify that source names should
|
* gnat_ugn.texi (gnatxref, gnatfind): Clarify that source names should
|
be base names, and not includes directories.
|
be base names, and not includes directories.
|
|
|
2004-06-11 Arnaud Charlet
|
2004-06-11 Arnaud Charlet
|
|
|
* Makefile.generic ($(EXEC)): Depend on $(OBJECTS), not $(OBJ_FILES),
|
* Makefile.generic ($(EXEC)): Depend on $(OBJECTS), not $(OBJ_FILES),
|
so that dependencies are properly taken into account by make.
|
so that dependencies are properly taken into account by make.
|
|
|
2004-06-11 Arnaud Charlet
|
2004-06-11 Arnaud Charlet
|
|
|
PR ada/15622
|
PR ada/15622
|
* s-unstyp.ads, s-maccod.ads, sem_ch8.adb, s-auxdec.ads,
|
* s-unstyp.ads, s-maccod.ads, sem_ch8.adb, s-auxdec.ads,
|
exp_intr.adb, s-auxdec-vms_64.ads: Fix typo: instrinsic -> intrinsic
|
exp_intr.adb, s-auxdec-vms_64.ads: Fix typo: instrinsic -> intrinsic
|
|
|
2004-06-11 Jerome Guitton
|
2004-06-11 Jerome Guitton
|
|
|
* Makefile.in (install-gnatlib): install target-specific run-time files.
|
* Makefile.in (install-gnatlib): install target-specific run-time files.
|
|
|
* Make-lang.in: Remove obsolete targets.
|
* Make-lang.in: Remove obsolete targets.
|
|
|
2004-06-11 Ed Schonberg
|
2004-06-11 Ed Schonberg
|
|
|
* par-ch12.adb (P_Generic): Add scope before analyzing subprogram
|
* par-ch12.adb (P_Generic): Add scope before analyzing subprogram
|
specification, to catch misuses of program unit names.
|
specification, to catch misuses of program unit names.
|
|
|
* sem_res.adb (Resolve_Type_Conversion): Do not emit warnings on
|
* sem_res.adb (Resolve_Type_Conversion): Do not emit warnings on
|
superfluous conversions in an instance.
|
superfluous conversions in an instance.
|
|
|
2004-06-11 Ed Schonberg
|
2004-06-11 Ed Schonberg
|
|
|
PR ada/15403
|
PR ada/15403
|
* sem_ch12.adb (Save_References): If operator node has been folded to
|
* sem_ch12.adb (Save_References): If operator node has been folded to
|
enumeration literal, associated_node must be discarded.
|
enumeration literal, associated_node must be discarded.
|
|
|
2004-06-11 Jose Ruiz
|
2004-06-11 Jose Ruiz
|
|
|
* s-stchop-vxworks.adb: Add required pragma Convention to
|
* s-stchop-vxworks.adb: Add required pragma Convention to
|
Task_Descriptor because it is updated by a C function.
|
Task_Descriptor because it is updated by a C function.
|
|
|
2004-06-08 Arnaud Charlet
|
2004-06-08 Arnaud Charlet
|
|
|
PR ada/15568
|
PR ada/15568
|
* Makefile.in: Remove target specific SO_OPT on IRIX
|
* Makefile.in: Remove target specific SO_OPT on IRIX
|
|
|
2004-06-07 Richard Kenner
|
2004-06-07 Richard Kenner
|
|
|
* ada-tree.def (TRANSFORM_EXPR, ALLOCATE_EXPR, USE_EXPR): Deleted.
|
* ada-tree.def (TRANSFORM_EXPR, ALLOCATE_EXPR, USE_EXPR): Deleted.
|
(GNAT_NOP_EXPR, GNAT_LOOP_ID, EXPR_STMT, NULL_STMT): Likewise.
|
(GNAT_NOP_EXPR, GNAT_LOOP_ID, EXPR_STMT, NULL_STMT): Likewise.
|
(BLOCK_STMT, IF_STMT, GOTO_STMT, LABEL_STMT, RETURN_STMT): Likewise.
|
(BLOCK_STMT, IF_STMT, GOTO_STMT, LABEL_STMT, RETURN_STMT): Likewise.
|
(ASM_STMT, BREAK_STMT, REGION_STMT,HANDLER_STMT): Likewise.
|
(ASM_STMT, BREAK_STMT, REGION_STMT,HANDLER_STMT): Likewise.
|
(STMT_STMT, USE_STMT): New statement codes.
|
(STMT_STMT, USE_STMT): New statement codes.
|
(LOOP_STMT, EXIT_STMT): Make slight semantic changes.
|
(LOOP_STMT, EXIT_STMT): Make slight semantic changes.
|
* ada-tree.h: Reflect above changes.
|
* ada-tree.h: Reflect above changes.
|
(struct tree_loop_id): Deleted.
|
(struct tree_loop_id): Deleted.
|
(union lang_tree_node, struct lang_decl, struct lang_type):
|
(union lang_tree_node, struct lang_decl, struct lang_type):
|
Now just contains a tree node; update macros using TYPE_LANG_SPECIFIC
|
Now just contains a tree node; update macros using TYPE_LANG_SPECIFIC
|
and DECL_LANGUAGE_SPECIFIC to reflect these changes.
|
and DECL_LANGUAGE_SPECIFIC to reflect these changes.
|
(DECL_INIT_BY_ASSIGN_P, TRE_LOOP_NODE_ID, TREE_SLOC): Deleted.
|
(DECL_INIT_BY_ASSIGN_P, TRE_LOOP_NODE_ID, TREE_SLOC): Deleted.
|
(IS_ADA_STMT): New macro.
|
(IS_ADA_STMT): New macro.
|
* decl.c (annotate_decl_with_node): New function.
|
* decl.c (annotate_decl_with_node): New function.
|
(gnat_to_gnu_entity): Use it and Sloc_to_locus instead of set_lineno.
|
(gnat_to_gnu_entity): Use it and Sloc_to_locus instead of set_lineno.
|
(gnat_to_gnu_entity, case object): Remove call to expand CONVERT_EXPR.
|
(gnat_to_gnu_entity, case object): Remove call to expand CONVERT_EXPR.
|
Call add_stmt_with_node to do needed assignments.
|
Call add_stmt_with_node to do needed assignments.
|
Add call to update setjmp buffer directly, not via EXPR_STMT.
|
Add call to update setjmp buffer directly, not via EXPR_STMT.
|
(maybe_variable): Argment GNAT_NODE deleted.
|
(maybe_variable): Argment GNAT_NODE deleted.
|
* gigi.h (maybe_variable): Likewise.
|
* gigi.h (maybe_variable): Likewise.
|
(make_transform, add_stmt_with_node, set_block_for_group): New.
|
(make_transform, add_stmt_with_node, set_block_for_group): New.
|
(gnat_gimplify_expr, gnat_expand_body, Sloc_to_locus): Likewise.
|
(gnat_gimplify_expr, gnat_expand_body, Sloc_to_locus): Likewise.
|
(set_block_jmpbuf_decl, get_block_jmpbuf_decl): Likewise.
|
(set_block_jmpbuf_decl, get_block_jmpbuf_decl): Likewise.
|
(discard_file_names, gnu_block_stack, gnat_to_code): Deleted.
|
(discard_file_names, gnu_block_stack, gnat_to_code): Deleted.
|
(set_lineno, set_lineno_from_sloc): Likewise.
|
(set_lineno, set_lineno_from_sloc): Likewise.
|
(record_code_position, insert_code_for): Likewise.
|
(record_code_position, insert_code_for): Likewise.
|
(gnat_poplevel): Now returns void.
|
(gnat_poplevel): Now returns void.
|
(end_subprog_body): Now takes argument.
|
(end_subprog_body): Now takes argument.
|
* misc.c (cgraph.h, tree-inline.h): New includes.
|
* misc.c (cgraph.h, tree-inline.h): New includes.
|
(gnat_tree_size, LANG_HOOKS_TREE_SIZE): Deleted.
|
(gnat_tree_size, LANG_HOOKS_TREE_SIZE): Deleted.
|
(gnat_post_options, LANG_HOOKS_POST_OPTIONS): New.
|
(gnat_post_options, LANG_HOOKS_POST_OPTIONS): New.
|
(LANG_HOOKS_CALLGRAPH_EXPAND_FUNCTION): Likewise.
|
(LANG_HOOKS_CALLGRAPH_EXPAND_FUNCTION): Likewise.
|
(LANG_HOOKS_RTL_EXPAND_STMT, LANG_HOOKS_GIMPLIFY_EXPR): Likewise.
|
(LANG_HOOKS_RTL_EXPAND_STMT, LANG_HOOKS_GIMPLIFY_EXPR): Likewise.
|
(gnat_parse_file): Don't set immediate_size_expand.
|
(gnat_parse_file): Don't set immediate_size_expand.
|
Call cgraph functions.
|
Call cgraph functions.
|
(gnat_expand_expr): Remove most cases.
|
(gnat_expand_expr): Remove most cases.
|
(record_code_position, insert_code_for): Remove from here.
|
(record_code_position, insert_code_for): Remove from here.
|
* trans.c (toplev.h, tree-gimple.h): Now included.
|
* trans.c (toplev.h, tree-gimple.h): Now included.
|
(discard_file_names): Deleted.
|
(discard_file_names): Deleted.
|
(gnu_block_stack, gnu_block_stmt_node, gnu_block_stmt_free_list): Del.
|
(gnu_block_stack, gnu_block_stmt_node, gnu_block_stmt_free_list): Del.
|
(first_nondeleted_insn, make_expr_stmt_from_rtl): Likewise.
|
(first_nondeleted_insn, make_expr_stmt_from_rtl): Likewise.
|
(struct stmt_group, current_stmt_group, stmt_group_free_list): New.
|
(struct stmt_group, current_stmt_group, stmt_group_free_list): New.
|
(gnu_stack_free_list, record_cost_position, insert_code_for): Likewise.
|
(gnu_stack_free_list, record_cost_position, insert_code_for): Likewise.
|
(add_cleanup, push_stack, gnat_gimplify_stmt, add_cleanup): Likewise.
|
(add_cleanup, push_stack, gnat_gimplify_stmt, add_cleanup): Likewise.
|
(gnat_gimplify_type_sizes, gnat_gimplify_one_sizepos): Likewise.
|
(gnat_gimplify_type_sizes, gnat_gimplify_one_sizepos): Likewise.
|
(gnat_expand_body_1, gnat_gimplify_expr, annotate_with_node): Likewise.
|
(gnat_expand_body_1, gnat_gimplify_expr, annotate_with_node): Likewise.
|
(set_block_for_group, add_stmt_list): Likewise.
|
(set_block_for_group, add_stmt_list): Likewise.
|
(start_stmt_group): Renamed from start_block_stmt.
|
(start_stmt_group): Renamed from start_block_stmt.
|
(end_stmt_group): Likewise, from end_block_stmt.
|
(end_stmt_group): Likewise, from end_block_stmt.
|
(build_stmt_group): Likewise, from build_block_stmt, also add arg.
|
(build_stmt_group): Likewise, from build_block_stmt, also add arg.
|
(gigi): Don't set discard_file_names or call set_lineno.
|
(gigi): Don't set discard_file_names or call set_lineno.
|
Disallow front end ZCX; call gnat_to_gnu, not gnat_to_code.
|
Disallow front end ZCX; call gnat_to_gnu, not gnat_to_code.
|
(tree_transform): Deleted, now renamed to be gnat_to_gnu.
|
(tree_transform): Deleted, now renamed to be gnat_to_gnu.
|
Numerous changes throughout to reflect new names and complete
|
Numerous changes throughout to reflect new names and complete
|
function-at-a-time implementation.
|
function-at-a-time implementation.
|
(gnat_expand_stmt): Delete or comment out all cases.
|
(gnat_expand_stmt): Delete or comment out all cases.
|
(process_inlined_subprograms): Use add_stmt.
|
(process_inlined_subprograms): Use add_stmt.
|
(process_decls): Use gnat_to_gnu, not gnat_to_code, and don't
|
(process_decls): Use gnat_to_gnu, not gnat_to_code, and don't
|
call set_lineno; also remove unneeded block handling.
|
call set_lineno; also remove unneeded block handling.
|
(process_type): Remove unneeded block handling.
|
(process_type): Remove unneeded block handling.
|
(build_unit_elab): Remove calls to deleted functions.
|
(build_unit_elab): Remove calls to deleted functions.
|
* utils.c (cgraph.h, tree-inline.h, tree-gimple.h): Now include.
|
* utils.c (cgraph.h, tree-inline.h, tree-gimple.h): Now include.
|
(tree-dump.h): Likewise.
|
(tree-dump.h): Likewise.
|
(struct ada_binding_level): Add field jmpbuf_decl.
|
(struct ada_binding_level): Add field jmpbuf_decl.
|
(gnat_define_builtin, gnat_install_builtins): New.
|
(gnat_define_builtin, gnat_install_builtins): New.
|
(gnat_gimplify_function, gnat_finalize): Likewise.
|
(gnat_gimplify_function, gnat_finalize): Likewise.
|
(gnat_poplevel): No longer return BLOCK, set it instead.
|
(gnat_poplevel): No longer return BLOCK, set it instead.
|
Remove code dealing with nested functions.
|
Remove code dealing with nested functions.
|
(gnat_init_decl_processing): Also set size_type_node.
|
(gnat_init_decl_processing): Also set size_type_node.
|
Call gnat_install_builtins.
|
Call gnat_install_builtins.
|
(create_var_decl): Don't set DECL_INIT_BY_ASSIGN.
|
(create_var_decl): Don't set DECL_INIT_BY_ASSIGN.
|
(create_subprog_decl): Change handling of inline_flag; set TREE_STATIC.
|
(create_subprog_decl): Change handling of inline_flag; set TREE_STATIC.
|
Remove special-case for "main".
|
Remove special-case for "main".
|
(end_subprog_body): Add arg and rework for tree-ssa.
|
(end_subprog_body): Add arg and rework for tree-ssa.
|
(convert): Don't use GNAT_NOP_EXPR or look for TRANSFORM_EXPR.
|
(convert): Don't use GNAT_NOP_EXPR or look for TRANSFORM_EXPR.
|
Add case for BOOLEAN_TYPE.
|
Add case for BOOLEAN_TYPE.
|
* utils2.c (rtl.h): Now include.
|
* utils2.c (rtl.h): Now include.
|
(build_call_raise): Test Debug_Flag_NN directly.
|
(build_call_raise): Test Debug_Flag_NN directly.
|
(build_call_alloc_dealloc): Don't use local stack allocation for now.
|
(build_call_alloc_dealloc): Don't use local stack allocation for now.
|
(gnat_mark_addressable, case GNAT_NOP_EXPR): Deleted.
|
(gnat_mark_addressable, case GNAT_NOP_EXPR): Deleted.
|
(gnat_mark_addressable, case VAR_DECL): Handle both early & late cases.
|
(gnat_mark_addressable, case VAR_DECL): Handle both early & late cases.
|
|
|
2004-06-07 Robert Dewar
|
2004-06-07 Robert Dewar
|
|
|
* a-direct.ads, einfo.ads: Minor comment updates
|
* a-direct.ads, einfo.ads: Minor comment updates
|
|
|
* s-taprop-lynxos.adb, s-taprop-tru64.adb, s-taprop-irix.adb,
|
* s-taprop-lynxos.adb, s-taprop-tru64.adb, s-taprop-irix.adb,
|
s-taprop-irix-athread.adb, s-taprop-hpux-dce.adb, s-taprop-linux.adb,
|
s-taprop-irix-athread.adb, s-taprop-hpux-dce.adb, s-taprop-linux.adb,
|
s-taprop-dummy.adb, s-taprop-os2.adb, s-taprop-solaris.adb,
|
s-taprop-dummy.adb, s-taprop-os2.adb, s-taprop-solaris.adb,
|
s-taprop-vms.adb, s-taprop-mingw.adb, s-taprop-vxworks.adb,
|
s-taprop-vms.adb, s-taprop-mingw.adb, s-taprop-vxworks.adb,
|
s-taprop-posix.adb, s-taprop.ads, exp_dbug.adb: Minor reformatting.
|
s-taprop-posix.adb, s-taprop.ads, exp_dbug.adb: Minor reformatting.
|
|
|
* s-interr-sigaction.adb: Remove unreferenced variable
|
* s-interr-sigaction.adb: Remove unreferenced variable
|
(Attached_Interrupts). Minor reformatting.
|
(Attached_Interrupts). Minor reformatting.
|
Avoid use of variable I (replace by J).
|
Avoid use of variable I (replace by J).
|
|
|
* par-ch10.adb: Fix text of one error message
|
* par-ch10.adb: Fix text of one error message
|
|
|
* checks.adb, checks.ads, cstand.adb, vms_data.ads, errout.ads,
|
* checks.adb, checks.ads, cstand.adb, vms_data.ads, errout.ads,
|
exp_aggr.adb, exp_ch3.adb, exp_ch3.ads, exp_ch5.adb, exp_ch6.adb,
|
exp_aggr.adb, exp_ch3.adb, exp_ch3.ads, exp_ch5.adb, exp_ch6.adb,
|
exp_ch9.adb, exp_code.adb, gnat1drv.adb, lib-load.adb, lib-writ.adb,
|
exp_ch9.adb, exp_code.adb, gnat1drv.adb, lib-load.adb, lib-writ.adb,
|
opt.adb, par.adb, opt.ads, par-ch11.adb, par-ch3.adb, par-ch4.adb,
|
opt.adb, par.adb, opt.ads, par-ch11.adb, par-ch3.adb, par-ch4.adb,
|
par-ch5.adb, par-ch6.adb, par-ch8.adb, par-ch9.adb, par-prag.adb,
|
par-ch5.adb, par-ch6.adb, par-ch8.adb, par-ch9.adb, par-prag.adb,
|
par-util.adb, scng.adb, sem_aggr.adb, sem_attr.adb, sem_cat.adb,
|
par-util.adb, scng.adb, sem_aggr.adb, sem_attr.adb, sem_cat.adb,
|
sem_ch10.adb, sem_ch10.adb, sem_ch11.adb, sem_ch12.adb, sem_ch2.adb,
|
sem_ch10.adb, sem_ch10.adb, sem_ch11.adb, sem_ch12.adb, sem_ch2.adb,
|
sem_ch3.adb, sem_ch3.ads, sem_ch4.adb, sem_ch5.adb, sem_ch6.adb,
|
sem_ch3.adb, sem_ch3.ads, sem_ch4.adb, sem_ch5.adb, sem_ch6.adb,
|
sem_ch7.adb, sem_ch8.adb, sem_ch9.adb, sem_eval.adb, sem_prag.adb,
|
sem_ch7.adb, sem_ch8.adb, sem_ch9.adb, sem_eval.adb, sem_prag.adb,
|
sem_res.adb, sem_type.adb, sem_util.adb, sinfo.ads, snames.adb,
|
sem_res.adb, sem_type.adb, sem_util.adb, sinfo.ads, snames.adb,
|
snames.ads, snames.h, sprint.adb, switch-c.adb: Modifications for Ada
|
snames.ads, snames.h, sprint.adb, switch-c.adb: Modifications for Ada
|
2005 support.
|
2005 support.
|
|
|
2004-06-07 Doug Rupp
|
2004-06-07 Doug Rupp
|
|
|
* mlib-tgt-vms.adb: Rename mlib-tgt-vms.adb mlib-tgt-vms-alpha.adb
|
* mlib-tgt-vms.adb: Rename mlib-tgt-vms.adb mlib-tgt-vms-alpha.adb
|
|
|
* s-vaflop-vms.adb: Rename s-vaflop-vms.adb to s-vaflop-vms-alpha.adb
|
* s-vaflop-vms.adb: Rename s-vaflop-vms.adb to s-vaflop-vms-alpha.adb
|
|
|
* mlib-tgt-vms-ia64.adb: New file.
|
* mlib-tgt-vms-ia64.adb: New file.
|
|
|
* Makefile.in: Rename mlib-tgt-vms.adb to mlib-tgt-vms-alpha.adb
|
* Makefile.in: Rename mlib-tgt-vms.adb to mlib-tgt-vms-alpha.adb
|
Add mlib-tgt-vms-ia64.adb
|
Add mlib-tgt-vms-ia64.adb
|
Rename s-vaflop-vms.adb to s-vaflop-vms-alpha.adb.
|
Rename s-vaflop-vms.adb to s-vaflop-vms-alpha.adb.
|
Move to alpha specific ifeq section.
|
Move to alpha specific ifeq section.
|
Add VMS specific versions of symbols.adb
|
Add VMS specific versions of symbols.adb
|
Renaming of 5q vms files.
|
Renaming of 5q vms files.
|
|
|
* 5qsystem.ads renamed to system-vms_64.ads.
|
* 5qsystem.ads renamed to system-vms_64.ads.
|
|
|
2004-06-07 Vincent Celier
|
2004-06-07 Vincent Celier
|
|
|
* a-calend.ads: Add a GNAT Note comment after function Time_Of to
|
* a-calend.ads: Add a GNAT Note comment after function Time_Of to
|
explain that when a time of day corresponding to the non existing hour
|
explain that when a time of day corresponding to the non existing hour
|
on the day switching to DST is specified, Split may return a different
|
on the day switching to DST is specified, Split may return a different
|
value for Seconds.
|
value for Seconds.
|
|
|
* gnatcmd.adb: Add processing of GNAT METRIC (for gnatmetric), similar
|
* gnatcmd.adb: Add processing of GNAT METRIC (for gnatmetric), similar
|
to GNAT PRETTY.
|
to GNAT PRETTY.
|
|
|
* g-os_lib.adb (OpenVMS): New Boolean value imported from System.
|
* g-os_lib.adb (OpenVMS): New Boolean value imported from System.
|
(Normalize_Pathname): Only resolve VMS logical names when on VMS.
|
(Normalize_Pathname): Only resolve VMS logical names when on VMS.
|
|
|
* mlib-prj.adb (Build_Library): New flag Gtrasymobj_Needed, initialize
|
* mlib-prj.adb (Build_Library): New flag Gtrasymobj_Needed, initialize
|
to False.
|
to False.
|
If Gtrasymobj_Needed is True, add the full path of g-trasym.obj to
|
If Gtrasymobj_Needed is True, add the full path of g-trasym.obj to
|
the linking options.
|
the linking options.
|
(Build_Library.Check_Libs): On VMS, if there is a dependency on
|
(Build_Library.Check_Libs): On VMS, if there is a dependency on
|
g-trasym.ads, set Gtrasymobj_Needed to True.
|
g-trasym.ads, set Gtrasymobj_Needed to True.
|
|
|
* prj-attr.adb: Add new package Metrics for gnatmetric
|
* prj-attr.adb: Add new package Metrics for gnatmetric
|
|
|
* prj-nmsc.adb (Record_Other_Sources): Put source file names in
|
* prj-nmsc.adb (Record_Other_Sources): Put source file names in
|
canonical case to take into account files with upper case characters on
|
canonical case to take into account files with upper case characters on
|
Windows.
|
Windows.
|
(Ada_Check): Load the reference symbol file name in the name buffer to
|
(Ada_Check): Load the reference symbol file name in the name buffer to
|
check it, not the symbol file name.
|
check it, not the symbol file name.
|
|
|
* snames.ads, snames.adb: Add standard name Metrics (name of project
|
* snames.ads, snames.adb: Add standard name Metrics (name of project
|
file package for gnatmetric).
|
file package for gnatmetric).
|
|
|
* vms_conv.ads: Add Metric to Comment_Type
|
* vms_conv.ads: Add Metric to Comment_Type
|
|
|
* vms_conv.adb (Initialize): Add component dor Metric in Command_List
|
* vms_conv.adb (Initialize): Add component dor Metric in Command_List
|
|
|
* vms_data.ads: Add qualifiers for GNAT METRIC
|
* vms_data.ads: Add qualifiers for GNAT METRIC
|
|
|
* makegpr.adb (Link_Executables): Take into account the switches
|
* makegpr.adb (Link_Executables): Take into account the switches
|
specified in package Linker of the main project.
|
specified in package Linker of the main project.
|
|
|
2004-06-07 Thomas Quinot
|
2004-06-07 Thomas Quinot
|
|
|
* bindgen.adb (Set_Unit_Number): Units is an instance of Table, and so
|
* bindgen.adb (Set_Unit_Number): Units is an instance of Table, and so
|
the index of the last element is Units.Last, not Units.Table'Last
|
the index of the last element is Units.Last, not Units.Table'Last
|
(which is usually not a valid index within the actually allocated
|
(which is usually not a valid index within the actually allocated
|
storage for the table).
|
storage for the table).
|
|
|
* exp_ch4.adb (Insert_Dereference_Action): Change predicate that
|
* exp_ch4.adb (Insert_Dereference_Action): Change predicate that
|
determines whether to generate a call to a checked storage pool
|
determines whether to generate a call to a checked storage pool
|
Dereference action.
|
Dereference action.
|
Generate such a call only for a dereference that either comes from
|
Generate such a call only for a dereference that either comes from
|
source, or is the result of rewriting a dereference that comes from
|
source, or is the result of rewriting a dereference that comes from
|
source.
|
source.
|
|
|
2004-06-07 Romain Berrendonner
|
2004-06-07 Romain Berrendonner
|
|
|
* bindgen.adb (Gen_Output_File): Add support for GAP builds.
|
* bindgen.adb (Gen_Output_File): Add support for GAP builds.
|
|
|
2004-06-07 Eric Botcazou
|
2004-06-07 Eric Botcazou
|
|
|
(gnat_to_gnu_entity) : For multi-dimensional arrays at
|
(gnat_to_gnu_entity) : For multi-dimensional arrays at
|
file level, elaborate the stride for inner dimensions in alignment
|
file level, elaborate the stride for inner dimensions in alignment
|
units, not bytes.
|
units, not bytes.
|
|
|
* exp_ch5.adb: Correct wrong reference to Component_May_Be_Bit_Aligned
|
* exp_ch5.adb: Correct wrong reference to Component_May_Be_Bit_Aligned
|
in a comment.
|
in a comment.
|
|
|
2004-06-07 Javier Miranda
|
2004-06-07 Javier Miranda
|
|
|
* exp_ch6.adb: Correct wrong modification in previous patch
|
* exp_ch6.adb: Correct wrong modification in previous patch
|
|
|
2004-06-07 Vasiliy Fofanov
|
2004-06-07 Vasiliy Fofanov
|
|
|
* g-trasym.ads: Corrected comment to properly reflect level of support
|
* g-trasym.ads: Corrected comment to properly reflect level of support
|
on VMS.
|
on VMS.
|
|
|
2004-06-07 Hristian Kirtchev
|
2004-06-07 Hristian Kirtchev
|
|
|
* lib-xref.adb (Generate_Reference): Add nested function Is_On_LHS. It
|
* lib-xref.adb (Generate_Reference): Add nested function Is_On_LHS. It
|
includes case of a variable referenced on the left hand side of an
|
includes case of a variable referenced on the left hand side of an
|
assignment, therefore remove redundant code. Variables and prefixes of
|
assignment, therefore remove redundant code. Variables and prefixes of
|
indexed or selected components are now marked as referenced on left
|
indexed or selected components are now marked as referenced on left
|
hand side. Warnings are now properly emitted when variables or prefixes
|
hand side. Warnings are now properly emitted when variables or prefixes
|
are assigned but not read.
|
are assigned but not read.
|
|
|
* sem_warn.adb (Output_Unreferenced_Messages): Add additional checks to
|
* sem_warn.adb (Output_Unreferenced_Messages): Add additional checks to
|
left hand side referenced variables. Private access types do not
|
left hand side referenced variables. Private access types do not
|
produce the warning "variable ... is assigned but never read".
|
produce the warning "variable ... is assigned but never read".
|
Add also additional checks to left hand side referenced variables.
|
Add also additional checks to left hand side referenced variables.
|
Aliased, renamed objects and access types do not produce the warning
|
Aliased, renamed objects and access types do not produce the warning
|
"variable ... is assigned but never read" since other entities may read
|
"variable ... is assigned but never read" since other entities may read
|
the memory location.
|
the memory location.
|
|
|
2004-06-07 Jerome Guitton
|
2004-06-07 Jerome Guitton
|
|
|
* Makefile.in: In the powerpc/vxworks-specific section, restore
|
* Makefile.in: In the powerpc/vxworks-specific section, restore
|
EXTRA_GNATRTL_NONTASKING_OBJS and EXTRA_GNATRTL_TASKING_OBJS (removed
|
EXTRA_GNATRTL_NONTASKING_OBJS and EXTRA_GNATRTL_TASKING_OBJS (removed
|
by mistake).
|
by mistake).
|
|
|
2004-06-07 Ed Schonberg
|
2004-06-07 Ed Schonberg
|
|
|
* sem_ch4.adb (Remove_Abstract_Operations): Refine the removal of
|
* sem_ch4.adb (Remove_Abstract_Operations): Refine the removal of
|
predefined operators.
|
predefined operators.
|
Removes spurious type errors from g-trasym-vms.adb.
|
Removes spurious type errors from g-trasym-vms.adb.
|
|
|
* sem_res.adb (Rewrite_Renamed_Operator): If intrinsic operator is
|
* sem_res.adb (Rewrite_Renamed_Operator): If intrinsic operator is
|
distinct from the operator appearing in the source, call appropriate
|
distinct from the operator appearing in the source, call appropriate
|
routine to insert conversions when needed, and complete resolution of
|
routine to insert conversions when needed, and complete resolution of
|
node.
|
node.
|
(Resolve_Intrinsic_Operator): Fix cut-and-paste bug on transfer of
|
(Resolve_Intrinsic_Operator): Fix cut-and-paste bug on transfer of
|
interpretations for rewritten right operand.
|
interpretations for rewritten right operand.
|
(Set_Mixed_Mode_Operand): Handle properly a universal real operand when
|
(Set_Mixed_Mode_Operand): Handle properly a universal real operand when
|
the other operand is overloaded and the context is a type conversion.
|
the other operand is overloaded and the context is a type conversion.
|
|
|
2004-06-07 Richard Kenner
|
2004-06-07 Richard Kenner
|
|
|
* ada-tree.def (BLOCK_STMT): Now has two operands.
|
* ada-tree.def (BLOCK_STMT): Now has two operands.
|
(BREAK_STMT): New.
|
(BREAK_STMT): New.
|
|
|
* ada-tree.h: (BLOCK_STMT_BLOCK): New macro.
|
* ada-tree.h: (BLOCK_STMT_BLOCK): New macro.
|
|
|
* gigi.h: (gnat_poplevel): Now returns a tree.
|
* gigi.h: (gnat_poplevel): Now returns a tree.
|
|
|
* trans.c (end_block_stmt): Add arg; all callers changed.
|
* trans.c (end_block_stmt): Add arg; all callers changed.
|
(tree_transform, case N_Case_Statement): Make a BLOCK_STMT for a WHEN.
|
(tree_transform, case N_Case_Statement): Make a BLOCK_STMT for a WHEN.
|
(start_block_stmt): Clear BLOCK_STMT_BLOCK.
|
(start_block_stmt): Clear BLOCK_STMT_BLOCK.
|
(add_stmt): Set TREE_TYPE.
|
(add_stmt): Set TREE_TYPE.
|
(gnat_expand_stmt, case BLOCK_STMT): Handle BLOCK_STMT_BLOCK.
|
(gnat_expand_stmt, case BLOCK_STMT): Handle BLOCK_STMT_BLOCK.
|
(gnat_expand_stmt, case BREAK_STMT): New case.
|
(gnat_expand_stmt, case BREAK_STMT): New case.
|
|
|
* utils.c (gnat_poplevel): Return a BLOCK, if we made one.
|
* utils.c (gnat_poplevel): Return a BLOCK, if we made one.
|
|
|
2004-06-07 Jose Ruiz
|
2004-06-07 Jose Ruiz
|
|
|
* s-stchop.adsm s-stchop.adb, s-stchop-vxworks.adb: Remove the
|
* s-stchop.adsm s-stchop.adb, s-stchop-vxworks.adb: Remove the
|
procedure Set_Stack_Size that is not needed.
|
procedure Set_Stack_Size that is not needed.
|
|
|
2004-06-07 Sergey Rybin
|
2004-06-07 Sergey Rybin
|
|
|
* gnat_ugn.texi: Clarify the case when non-standard naming scheme is
|
* gnat_ugn.texi: Clarify the case when non-standard naming scheme is
|
used for gnatpp input file and for the files upon which it depends
|
used for gnatpp input file and for the files upon which it depends
|
|
|
2004-06-07 Ben Brosgol
|
2004-06-07 Ben Brosgol
|
|
|
* gnat_ugn.texi: Wordsmithing of "GNAT and Libraries" chapter
|
* gnat_ugn.texi: Wordsmithing of "GNAT and Libraries" chapter
|
|
|
2004-06-07 Arnaud Charlet
|
2004-06-07 Arnaud Charlet
|
|
|
* gnatvsn.ads: Bump version numbers appropriately.
|
* gnatvsn.ads: Bump version numbers appropriately.
|
Add new build type.
|
Add new build type.
|
|
|
2004-06-07 Pascal Obry
|
2004-06-07 Pascal Obry
|
|
|
* gnat_ugn.texi: Improve comments about imported names and link names
|
* gnat_ugn.texi: Improve comments about imported names and link names
|
on Windows. Add a note about the requirement to use -k gnatdll's option
|
on Windows. Add a note about the requirement to use -k gnatdll's option
|
when working with a DLL which has stripped stdcall symbols (no @nn
|
when working with a DLL which has stripped stdcall symbols (no @nn
|
suffix).
|
suffix).
|
|
|
2004-05-27 Vincent Celier
|
2004-05-27 Vincent Celier
|
|
|
* vms_data.ads: Add new GNAT PRETTY qualifiers /NO_BACKUP and
|
* vms_data.ads: Add new GNAT PRETTY qualifiers /NO_BACKUP and
|
COMMENTS_LAYOUT=UNTOUCHED
|
COMMENTS_LAYOUT=UNTOUCHED
|
|
|
* symbols-vms.adb, symbols-vms-alpha.adb: Renamed symbols-vms.adb to
|
* symbols-vms.adb, symbols-vms-alpha.adb: Renamed symbols-vms.adb to
|
symbols-vms-alpha.adb
|
symbols-vms-alpha.adb
|
|
|
2004-05-27 Thomas Quinot
|
2004-05-27 Thomas Quinot
|
|
|
* sem.ads: Clarify documentation on checks suppression.
|
* sem.ads: Clarify documentation on checks suppression.
|
|
|
* einfo.ads (Is_Known_Non_Null): Minor comment typo fix and rephrasing.
|
* einfo.ads (Is_Known_Non_Null): Minor comment typo fix and rephrasing.
|
|
|
2004-05-27 Ed Schonberg
|
2004-05-27 Ed Schonberg
|
|
|
* sem_util.adb (Is_Descendent_Of): Examine properly all ancestors in
|
* sem_util.adb (Is_Descendent_Of): Examine properly all ancestors in
|
the case of multiple derivations.
|
the case of multiple derivations.
|
(Is_Object_Reference): For a selected component, verify that the prefix
|
(Is_Object_Reference): For a selected component, verify that the prefix
|
is itself an object and not a value.
|
is itself an object and not a value.
|
|
|
* sem_ch12.adb (Same_Instantiated_Constant): New name for
|
* sem_ch12.adb (Same_Instantiated_Constant): New name for
|
Same_Instantiated_Entity.
|
Same_Instantiated_Entity.
|
(Same_Instantiated_Variable): Subsidiary to
|
(Same_Instantiated_Variable): Subsidiary to
|
Check_Formal_Package_Instance, to recognize actuals for in-out generic
|
Check_Formal_Package_Instance, to recognize actuals for in-out generic
|
formals that are obtained from a previous formal package.
|
formals that are obtained from a previous formal package.
|
(Instantiate_Subprogram_Body): Emit proper error when
|
(Instantiate_Subprogram_Body): Emit proper error when
|
generating code and the proper body of a stub is missing.
|
generating code and the proper body of a stub is missing.
|
|
|
* sem_ch4.adb (Remove_Address_Interpretations): If the operation still
|
* sem_ch4.adb (Remove_Address_Interpretations): If the operation still
|
has a universal interpretation, do the disambiguation here.
|
has a universal interpretation, do the disambiguation here.
|
|
|
* exp_ch4.adb (Expand_N_Type_Conversion,
|
* exp_ch4.adb (Expand_N_Type_Conversion,
|
Expand_N_Unchecked_Type_Conversion): Special handling when target type
|
Expand_N_Unchecked_Type_Conversion): Special handling when target type
|
is Address, to avoid typing anomalies when Address is a visible integer
|
is Address, to avoid typing anomalies when Address is a visible integer
|
type.
|
type.
|
|
|
* exp_ch6.adb (Expand_N_Subprogram_Body): Use Is_Descendent_Of_Address
|
* exp_ch6.adb (Expand_N_Subprogram_Body): Use Is_Descendent_Of_Address
|
to determine whether a subprogram should not be marked Pure, even when
|
to determine whether a subprogram should not be marked Pure, even when
|
declared in a pure package.
|
declared in a pure package.
|
|
|
2004-05-27 Jose Ruiz
|
2004-05-27 Jose Ruiz
|
|
|
* gnat_ugn.texi: Replace pragma Ravenscar by pragma Profile.
|
* gnat_ugn.texi: Replace pragma Ravenscar by pragma Profile.
|
|
|
* gnat_rm.texi: Replace Max_Entry_Queue_Depth by Max_Entry_Queue_Length
|
* gnat_rm.texi: Replace Max_Entry_Queue_Depth by Max_Entry_Queue_Length
|
Document No_Dynamic_Attachment, that supersedes No_Dynamic_Interrupts.
|
Document No_Dynamic_Attachment, that supersedes No_Dynamic_Interrupts.
|
Update the documentation about the Ravenscar profile, following the
|
Update the documentation about the Ravenscar profile, following the
|
definition found in AI-249.
|
definition found in AI-249.
|
|
|
* sem_prag.adb: Use FIFO_Within_Priorities and Ceiling_Locking when
|
* sem_prag.adb: Use FIFO_Within_Priorities and Ceiling_Locking when
|
setting the Profile (Ravenscar). This must be done in addition to
|
setting the Profile (Ravenscar). This must be done in addition to
|
setting the required restrictions.
|
setting the required restrictions.
|
|
|
* rtsfind.ads: Add the set of operations defined in package
|
* rtsfind.ads: Add the set of operations defined in package
|
Ada.Interrupts.
|
Ada.Interrupts.
|
|
|
* exp_ch6.adb: Check whether we are violating the No_Dynamic_Attachment
|
* exp_ch6.adb: Check whether we are violating the No_Dynamic_Attachment
|
restriction.
|
restriction.
|
|
|
2004-05-27 Eric Botcazou
|
2004-05-27 Eric Botcazou
|
|
|
lang-specs.h: Always require -c or -S and always redirect to /dev/null
|
lang-specs.h: Always require -c or -S and always redirect to /dev/null
|
if -gnatc or -gnats is passed.
|
if -gnatc or -gnats is passed.
|
|
|
2004-05-27 Hristian Kirtchev
|
2004-05-27 Hristian Kirtchev
|
|
|
* sem_prag.adb (Sig_Flags): A Pragma_Unchecked_Union does not count as
|
* sem_prag.adb (Sig_Flags): A Pragma_Unchecked_Union does not count as
|
a significant reference. Warnings are now properly emitted when a
|
a significant reference. Warnings are now properly emitted when a
|
discriminated type is not referenced.
|
discriminated type is not referenced.
|
|
|
* lib-xref.adb (Generate_Reference): A deferred constant completion,
|
* lib-xref.adb (Generate_Reference): A deferred constant completion,
|
record representation clause or record type discriminant does not
|
record representation clause or record type discriminant does not
|
produce a reference to its corresponding entity. Warnings are now
|
produce a reference to its corresponding entity. Warnings are now
|
properly emitted when deferred constants and record types are not
|
properly emitted when deferred constants and record types are not
|
referenced.
|
referenced.
|
|
|
2004-05-27 Geert Bosch
|
2004-05-27 Geert Bosch
|
|
|
* Makefile.in: Use long version of libm routines on ia64 gnu/linux.
|
* Makefile.in: Use long version of libm routines on ia64 gnu/linux.
|
Fixes ACATS Annex G tests.
|
Fixes ACATS Annex G tests.
|
|
|
2004-05-27 Robert Dewar
|
2004-05-27 Robert Dewar
|
|
|
* rtsfind.adb (RTU_Loaded): Temporary kludge to get past bug of not
|
* rtsfind.adb (RTU_Loaded): Temporary kludge to get past bug of not
|
handling WITH
|
handling WITH
|
|
|
2004-05-27 Arnaud Charlet
|
2004-05-27 Arnaud Charlet
|
|
|
* s-interr.adb (Server_Task): Take into account case of early return
|
* s-interr.adb (Server_Task): Take into account case of early return
|
from sigwait under e.g. linux.
|
from sigwait under e.g. linux.
|
|
|
2004-05-27 Sergey Rybin
|
2004-05-27 Sergey Rybin
|
|
|
* gnat_ugn.texi: Add description for the new gnatpp options:
|
* gnat_ugn.texi: Add description for the new gnatpp options:
|
-rnb - replace the original source without creating its backup copy
|
-rnb - replace the original source without creating its backup copy
|
-c0 - do not format comments
|
-c0 - do not format comments
|
|
|
2004-05-24 Geert Bosch
|
2004-05-24 Geert Bosch
|
|
|
* a-numaux-x86.adb (Reduce): Reimplement using an approximation of Pi
|
* a-numaux-x86.adb (Reduce): Reimplement using an approximation of Pi
|
with 192 bits of precision, sufficient to reduce a double-extended
|
with 192 bits of precision, sufficient to reduce a double-extended
|
arguments X with a maximum relative error of T'Machine_Epsilon, for X
|
arguments X with a maximum relative error of T'Machine_Epsilon, for X
|
in -2.0**32 .. 2.0**32.
|
in -2.0**32 .. 2.0**32.
|
(Cos, Sin): Always reduce arguments of 1/4 Pi or larger, to prevent
|
(Cos, Sin): Always reduce arguments of 1/4 Pi or larger, to prevent
|
reduction by the processor, which only uses a 68-bit approximation of
|
reduction by the processor, which only uses a 68-bit approximation of
|
Pi.
|
Pi.
|
(Tan): Always reduce arguments and compute function either using
|
(Tan): Always reduce arguments and compute function either using
|
the processor's fptan instruction, or by dividing sin and cos as needed.
|
the processor's fptan instruction, or by dividing sin and cos as needed.
|
|
|
2004-05-24 Doug Rupp
|
2004-05-24 Doug Rupp
|
|
|
* adaint.c (__gnat_readdir): Cast CRTL function retun value to avoid
|
* adaint.c (__gnat_readdir): Cast CRTL function retun value to avoid
|
gcc error on 32/64 bit VMS.
|
gcc error on 32/64 bit VMS.
|
|
|
2004-05-24 Olivier Hainque
|
2004-05-24 Olivier Hainque
|
|
|
* init.c (__gnat_error_handler): Handle EEXIST as EACCES for SIGSEGVs,
|
* init.c (__gnat_error_handler): Handle EEXIST as EACCES for SIGSEGVs,
|
since this is what we get for stack overflows although not documented
|
since this is what we get for stack overflows although not documented
|
as such.
|
as such.
|
Document the issues which may require adjustments to our signal
|
Document the issues which may require adjustments to our signal
|
handlers.
|
handlers.
|
|
|
2004-05-24 Ed Schonberg
|
2004-05-24 Ed Schonberg
|
|
|
* inline.adb (Add_Scope_To_Clean): Do not add cleanup actions to the
|
* inline.adb (Add_Scope_To_Clean): Do not add cleanup actions to the
|
enclosing dynamic scope if the instantiation is within a generic unit.
|
enclosing dynamic scope if the instantiation is within a generic unit.
|
|
|
2004-05-24 Arnaud Charlet
|
2004-05-24 Arnaud Charlet
|
|
|
* exp_dbug.ads: Fix typo.
|
* exp_dbug.ads: Fix typo.
|
|
|
* Makefile.in: s-osinte-linux-ia64.ads was misnamed.
|
* Makefile.in: s-osinte-linux-ia64.ads was misnamed.
|
Rename it to its proper name: system-linux-ia64.ads
|
Rename it to its proper name: system-linux-ia64.ads
|
(stamp-gnatlib1): Remove extra target specific run time files when
|
(stamp-gnatlib1): Remove extra target specific run time files when
|
setting up the rts directory.
|
setting up the rts directory.
|
|
|
2004-05-24 Javier Miranda
|
2004-05-24 Javier Miranda
|
|
|
* einfo.ads, einfo.adb (Limited_Views): Removed.
|
* einfo.ads, einfo.adb (Limited_Views): Removed.
|
(Limited_View): New attribute that replaces the previous one. It is
|
(Limited_View): New attribute that replaces the previous one. It is
|
now a bona fide package with the limited-view list through the
|
now a bona fide package with the limited-view list through the
|
first_entity and first_private attributes.
|
first_entity and first_private attributes.
|
|
|
* sem_ch10.adb (Install_Private_With_Clauses): Give support to
|
* sem_ch10.adb (Install_Private_With_Clauses): Give support to
|
limited-private-with clause.
|
limited-private-with clause.
|
(Install_Limited_Withed_Unit): Install the private declarations of a
|
(Install_Limited_Withed_Unit): Install the private declarations of a
|
limited-private-withed package. Update the installation of the shadow
|
limited-private-withed package. Update the installation of the shadow
|
entities according to the new structure (see Build_Limited_Views)
|
entities according to the new structure (see Build_Limited_Views)
|
(Build_Limited_Views): Replace the previous implementation of the
|
(Build_Limited_Views): Replace the previous implementation of the
|
limited view by a package entity that references the first shadow
|
limited view by a package entity that references the first shadow
|
entity plus the first shadow private entity (required for limited-
|
entity plus the first shadow private entity (required for limited-
|
private-with clause)
|
private-with clause)
|
(New_Internal_Shadow_Entity): Code cleanup.
|
(New_Internal_Shadow_Entity): Code cleanup.
|
(Remove_Limited_With_Clause): Update the implementation to undo the
|
(Remove_Limited_With_Clause): Update the implementation to undo the
|
new work carried out by Build_Limited_Views.
|
new work carried out by Build_Limited_Views.
|
(Build_Chain): Complete documentation.
|
(Build_Chain): Complete documentation.
|
Replace Ada0Y by Ada 0Y in comments
|
Replace Ada0Y by Ada 0Y in comments
|
Minor reformating
|
Minor reformating
|
|
|
* sem_ch3.adb (Array_Type_Declaration): In case of anonymous access
|
* sem_ch3.adb (Array_Type_Declaration): In case of anonymous access
|
types the level of accessibility depends on the enclosing type
|
types the level of accessibility depends on the enclosing type
|
declaration.
|
declaration.
|
|
|
* sem_ch8.adb (Find_Expanded_Name): Fix condition to detect shadow
|
* sem_ch8.adb (Find_Expanded_Name): Fix condition to detect shadow
|
entities. Complete documentation of previous change.
|
entities. Complete documentation of previous change.
|
|
|
2004-05-24 Robert Dewar
|
2004-05-24 Robert Dewar
|
|
|
* namet.adb: Minor reformatting
|
* namet.adb: Minor reformatting
|
Avoid use of name I (replace by J)
|
Avoid use of name I (replace by J)
|
Minor code restructuring
|
Minor code restructuring
|
|
|
* sem_ch6.adb: Minor reformatting
|
* sem_ch6.adb: Minor reformatting
|
|
|
* lib-writ.adb: Do not set restriction as active if this is a
|
* lib-writ.adb: Do not set restriction as active if this is a
|
Restriction_Warning case.
|
Restriction_Warning case.
|
|
|
* sem_prag.adb: Reset restriction warning flag if real pragma
|
* sem_prag.adb: Reset restriction warning flag if real pragma
|
restriction encountered.
|
restriction encountered.
|
|
|
* s-htable.adb: Minor reformatting
|
* s-htable.adb: Minor reformatting
|
Change rotate count to 3 in Hash (improves hash for small strings)
|
Change rotate count to 3 in Hash (improves hash for small strings)
|
|
|
* 5qsystem.ads: Add comments for type Address (no literals allowed).
|
* 5qsystem.ads: Add comments for type Address (no literals allowed).
|
|
|
* gnat_ugn.texi: Add new section of documentation "Code Generation
|
* gnat_ugn.texi: Add new section of documentation "Code Generation
|
Control", which describes the use of -m switches.
|
Control", which describes the use of -m switches.
|
|
|
2004-05-24 Eric Botcazou
|
2004-05-24 Eric Botcazou
|
|
|
trans.c (tree_transform) : Do the dereference directly
|
trans.c (tree_transform) : Do the dereference directly
|
through the DECL_INITIAL for renamed variables.
|
through the DECL_INITIAL for renamed variables.
|
|
|
2004-05-24 Arnaud Charlet
|
2004-05-24 Arnaud Charlet
|
|
|
* s-osinte-linux-ia64.ads: Renamed system-linux-ia64.ads
|
* s-osinte-linux-ia64.ads: Renamed system-linux-ia64.ads
|
|
|
2004-05-19 Joel Brobecker
|
2004-05-19 Joel Brobecker
|
|
|
* exp_dbug.ads: Correct comments concerning handling of overloading,
|
* exp_dbug.ads: Correct comments concerning handling of overloading,
|
since we no longer use $ anymore.
|
since we no longer use $ anymore.
|
|
|
2004-05-19 Sergey Rybin
|
2004-05-19 Sergey Rybin
|
|
|
* sem_ch10.adb (Optional_Subunit): When loading a subunit, do not
|
* sem_ch10.adb (Optional_Subunit): When loading a subunit, do not
|
ignore errors if ASIS_Mode is set. This prevents creating ASIS trees
|
ignore errors if ASIS_Mode is set. This prevents creating ASIS trees
|
with illegal subunits.
|
with illegal subunits.
|
|
|
2004-05-19 Ed Schonberg
|
2004-05-19 Ed Schonberg
|
|
|
* sem_ch6.adb (Check_Following_Pragma): When compiling a subprogram
|
* sem_ch6.adb (Check_Following_Pragma): When compiling a subprogram
|
body with front-end inlining enabled, check whether an inline pragma
|
body with front-end inlining enabled, check whether an inline pragma
|
appears immediately after the body and applies to it.
|
appears immediately after the body and applies to it.
|
|
|
* sem_prag.adb (Cannot_Inline): Emit warning if front-end inlining is
|
* sem_prag.adb (Cannot_Inline): Emit warning if front-end inlining is
|
enabled and the pragma appears after the body of the subprogram.
|
enabled and the pragma appears after the body of the subprogram.
|
|
|
2004-05-17 Richard Kenner
|
2004-05-17 Richard Kenner
|
|
|
Part of function-at-a-time conversion
|
Part of function-at-a-time conversion
|
|
|
* misc.c (adjust_decl_rtl): Deleted.
|
* misc.c (adjust_decl_rtl): Deleted.
|
(LANG_HOOKS_PUSHLEVEL, LANG_HOOKS_POPLEVEL, LANG_HOOKS_SET_BLOCK):
|
(LANG_HOOKS_PUSHLEVEL, LANG_HOOKS_POPLEVEL, LANG_HOOKS_SET_BLOCK):
|
Define.
|
Define.
|
|
|
* gigi.h: (adjust_decl_rtl, kept_level_p, set_block): Deleted.
|
* gigi.h: (adjust_decl_rtl, kept_level_p, set_block): Deleted.
|
(add_decl_stmt, add_stmt, block_has_vars): New functions.
|
(add_decl_stmt, add_stmt, block_has_vars): New functions.
|
(gnat_pushlevel, gnat_poplevel): Renamed from pushlevel and poplevel.
|
(gnat_pushlevel, gnat_poplevel): Renamed from pushlevel and poplevel.
|
|
|
* decl.c (elaborate_expression, maybe_pad_type): Call add_decl_stmt
|
* decl.c (elaborate_expression, maybe_pad_type): Call add_decl_stmt
|
when making a decl.
|
when making a decl.
|
(gnat_to_gnu_entity): Likewise.
|
(gnat_to_gnu_entity): Likewise.
|
Use add_stmt to update setjmp buffer.
|
Use add_stmt to update setjmp buffer.
|
Set TREE_ADDRESSABLE instead of calling put_var_into_stack and
|
Set TREE_ADDRESSABLE instead of calling put_var_into_stack and
|
flush_addressof.
|
flush_addressof.
|
No longer call adjust_decl_rtl.
|
No longer call adjust_decl_rtl.
|
(DECL_INIT_BY_ASSIGN_P): New macro.
|
(DECL_INIT_BY_ASSIGN_P): New macro.
|
(DECL_STMT_VAR): Likewise.
|
(DECL_STMT_VAR): Likewise.
|
|
|
* trans.c (gigi): Call start_block_stmt to make the outermost
|
* trans.c (gigi): Call start_block_stmt to make the outermost
|
BLOCK_STMT.
|
BLOCK_STMT.
|
(gnat_to_code, gnu_to_gnu, tree_transform, process_decls, process_type):
|
(gnat_to_code, gnu_to_gnu, tree_transform, process_decls, process_type):
|
Call start_block_stmt and end_block_stmt temporarily.
|
Call start_block_stmt and end_block_stmt temporarily.
|
Use gnat_expand_stmt instead of expand_expr_stmt.
|
Use gnat_expand_stmt instead of expand_expr_stmt.
|
(add_decl_stmt): New function.
|
(add_decl_stmt): New function.
|
(tree_transform): Call it.
|
(tree_transform): Call it.
|
(add_stmt): Also emit initializing assignment for DECL_STMT if needed.
|
(add_stmt): Also emit initializing assignment for DECL_STMT if needed.
|
(end_block_stmt): Set type and NULL_STMT.
|
(end_block_stmt): Set type and NULL_STMT.
|
(gnat_expand_stmt): Make recursize call instead of calling
|
(gnat_expand_stmt): Make recursize call instead of calling
|
expand_expr_stmt.
|
expand_expr_stmt.
|
(gnat_expand_stmt, case DECL_STMT): New case.
|
(gnat_expand_stmt, case DECL_STMT): New case.
|
(set_lineno_from_sloc): Do nothing if global.
|
(set_lineno_from_sloc): Do nothing if global.
|
(gnu_block_stmt_node, gnu_block_stmt_free_list): New variables.
|
(gnu_block_stmt_node, gnu_block_stmt_free_list): New variables.
|
(start_block_stmt, add_stmt, end_block_stmt): New functions.
|
(start_block_stmt, add_stmt, end_block_stmt): New functions.
|
(build_block_stmt): Call them.
|
(build_block_stmt): Call them.
|
(gnat_to_code): Don't expand NULL_STMT.
|
(gnat_to_code): Don't expand NULL_STMT.
|
(build_unit_elab): Rename pushlevel and poplevel to gnat_* and change
|
(build_unit_elab): Rename pushlevel and poplevel to gnat_* and change
|
args.
|
args.
|
(tree_transform): Likewise.
|
(tree_transform): Likewise.
|
(tree_transform, case N_Null_Statement): Return NULL_STMT.
|
(tree_transform, case N_Null_Statement): Return NULL_STMT.
|
(gnat_expand_stmt, case NULL_STMT): New case.
|
(gnat_expand_stmt, case NULL_STMT): New case.
|
(gnat_expand_stmt, case IF_STMT): Allow nested IF_STMT to have no
|
(gnat_expand_stmt, case IF_STMT): Allow nested IF_STMT to have no
|
IF_STMT_TRUE.
|
IF_STMT_TRUE.
|
|
|
* utils2.c (gnat_mark_addressable, case VAR_DECL): Do not set
|
* utils2.c (gnat_mark_addressable, case VAR_DECL): Do not set
|
TREE_ADDRESSABLE.
|
TREE_ADDRESSABLE.
|
|
|
* utils.c (create_var_decl): Do not call expand_decl or
|
* utils.c (create_var_decl): Do not call expand_decl or
|
expand_decl_init.
|
expand_decl_init.
|
Set TREE_ADDRESSABLE instead of calling gnat_mark_addressable.
|
Set TREE_ADDRESSABLE instead of calling gnat_mark_addressable.
|
Set DECL_INIT_BY_ASSIGN_P when needed and do not generate MODIFY_EXPR
|
Set DECL_INIT_BY_ASSIGN_P when needed and do not generate MODIFY_EXPR
|
here.
|
here.
|
(struct e_stack): Add chain_next to GTY.
|
(struct e_stack): Add chain_next to GTY.
|
(struct binding_level): Deleted.
|
(struct binding_level): Deleted.
|
(struct ada_binding_level): New struct.
|
(struct ada_binding_level): New struct.
|
(free_block_chain): New.
|
(free_block_chain): New.
|
(global_binding_level, clear_binding_level): Deleted.
|
(global_binding_level, clear_binding_level): Deleted.
|
(global_bindings_p): Rework to see if no chain.
|
(global_bindings_p): Rework to see if no chain.
|
(kept_level_p, set_block): Deleted.
|
(kept_level_p, set_block): Deleted.
|
(gnat_pushlevel): Renamed from pushlevel and extensive reworked to use
|
(gnat_pushlevel): Renamed from pushlevel and extensive reworked to use
|
new data structure and work directly on BLOCK node.
|
new data structure and work directly on BLOCK node.
|
(gnat_poplevel): Similarly.
|
(gnat_poplevel): Similarly.
|
(get_decls): Look at BLOCK_VARS.
|
(get_decls): Look at BLOCK_VARS.
|
(insert_block): Work directly on BLOCK node.
|
(insert_block): Work directly on BLOCK node.
|
(block_has_var): New function.
|
(block_has_var): New function.
|
(pushdecl): Rework for new binding structures.
|
(pushdecl): Rework for new binding structures.
|
(gnat_init_decl_processing): Rename and rework calls to pushlevel and
|
(gnat_init_decl_processing): Rename and rework calls to pushlevel and
|
poplevel.
|
poplevel.
|
(build_subprog_body): Likewise.
|
(build_subprog_body): Likewise.
|
(end_subprog_body): Likewise; also set up BLOCK in DECL_INITIAL.
|
(end_subprog_body): Likewise; also set up BLOCK in DECL_INITIAL.
|
|
|
* ada-tree.def (DECL_STMT, NULL_STMT): New codes.
|
* ada-tree.def (DECL_STMT, NULL_STMT): New codes.
|
|
|
* ada-tree.h: (DECL_INIT_BY_ASSIGN_P): New macro.
|
* ada-tree.h: (DECL_INIT_BY_ASSIGN_P): New macro.
|
(DECL_STMT_VAR): Likewise.
|
(DECL_STMT_VAR): Likewise.
|
|
|
2004-05-17 Robert Dewar
|
2004-05-17 Robert Dewar
|
|
|
* restrict.ads, restrict.adb (Process_Restriction_Synonym): New
|
* restrict.ads, restrict.adb (Process_Restriction_Synonym): New
|
procedure
|
procedure
|
|
|
* sem_prag.adb (Analyze_Pragma, case Restrictions): Cleanup handling
|
* sem_prag.adb (Analyze_Pragma, case Restrictions): Cleanup handling
|
of restriction synonyums by using
|
of restriction synonyums by using
|
Restrict.Process_Restriction_Synonyms.
|
Restrict.Process_Restriction_Synonyms.
|
|
|
* snames.ads, snames.adb: Add entries for Process_Restriction_Synonym
|
* snames.ads, snames.adb: Add entries for Process_Restriction_Synonym
|
|
|
* s-restri.ads (Tasking_Allowed): Correct missing comment
|
* s-restri.ads (Tasking_Allowed): Correct missing comment
|
|
|
* s-rident.ads: Add entries for restriction synonyms
|
* s-rident.ads: Add entries for restriction synonyms
|
|
|
* ali.adb: Fix some problems with badly formatted ALI files that can
|
* ali.adb: Fix some problems with badly formatted ALI files that can
|
result in infinite loops.
|
result in infinite loops.
|
|
|
* s-taprop-lynxos.adb, s-tpopsp-lynxos.adb, s-taprop-tru64.adb,
|
* s-taprop-lynxos.adb, s-tpopsp-lynxos.adb, s-taprop-tru64.adb,
|
s-tpopsp-posix-foreign.adb, s-taprop-irix.adb, s-interr-sigaction.adb,
|
s-tpopsp-posix-foreign.adb, s-taprop-irix.adb, s-interr-sigaction.adb,
|
s-taprop-irix-athread.adb, s-taprop-hpux-dce.adb, s-taprop-linux.adb,
|
s-taprop-irix-athread.adb, s-taprop-hpux-dce.adb, s-taprop-linux.adb,
|
s-taprop-dummy.adb, s-interr-dummy.adb, s-taprop-os2.adb,
|
s-taprop-dummy.adb, s-interr-dummy.adb, s-taprop-os2.adb,
|
s-taprop-solaris.adb, s-tpopsp-solaris.adb, s-asthan-vms.adb,
|
s-taprop-solaris.adb, s-tpopsp-solaris.adb, s-asthan-vms.adb,
|
s-inmaop-vms.adb, s-interr-vms.adb, s-taprop-vms.adb,
|
s-inmaop-vms.adb, s-interr-vms.adb, s-taprop-vms.adb,
|
s-tpopde-vms.adb, s-taprop-mingw.adb, s-interr-vxworks.adb,
|
s-tpopde-vms.adb, s-taprop-mingw.adb, s-interr-vxworks.adb,
|
s-taprop-vxworks.adb, s-tpopsp-vxworks.adb, s-taprop-posix.adb,
|
s-taprop-vxworks.adb, s-tpopsp-vxworks.adb, s-taprop-posix.adb,
|
s-tpopsp-posix.adb, s-tratas-default.adb, a-dynpri.adb,
|
s-tpopsp-posix.adb, s-tratas-default.adb, a-dynpri.adb,
|
a-tasatt.adb, a-taside.adb, a-taside.ads, exp_attr.adb,
|
a-tasatt.adb, a-taside.adb, a-taside.ads, exp_attr.adb,
|
exp_ch9.adb, g-thread.adb, rtsfind.ads, sem_attr.adb,
|
exp_ch9.adb, g-thread.adb, rtsfind.ads, sem_attr.adb,
|
s-interr.adb, s-interr.ads, s-soflin.ads, s-taasde.adb,
|
s-interr.adb, s-interr.ads, s-soflin.ads, s-taasde.adb,
|
s-taasde.ads, s-taenca.adb, s-taenca.ads, s-taprop.ads,
|
s-taasde.ads, s-taenca.adb, s-taenca.ads, s-taprop.ads,
|
s-tarest.adb, s-tarest.ads, s-tasdeb.adb, s-tasdeb.ads,
|
s-tarest.adb, s-tarest.ads, s-tasdeb.adb, s-tasdeb.ads,
|
s-tasini.adb, s-tasini.ads, s-taskin.adb, s-taskin.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-tasque.adb, s-tasque.ads, s-tasren.adb, s-tasren.ads,
|
s-tassta.adb, s-tassta.ads, s-tasuti.adb, s-tasuti.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-tataat.adb, s-tataat.ads, s-tpinop.adb, s-tpinop.ads,
|
s-tpoben.adb, s-tpobop.adb, s-tpobop.ads, s-tporft.adb,
|
s-tpoben.adb, s-tpobop.adb, s-tpobop.ads, s-tporft.adb,
|
s-tposen.adb, s-tposen.ads, s-tratas.adb, s-tratas.ads: Change Task_ID
|
s-tposen.adb, s-tposen.ads, s-tratas.adb, s-tratas.ads: Change Task_ID
|
to Task_Id (minor cleanup).
|
to Task_Id (minor cleanup).
|
|
|
2004-05-17 Vincent Celier
|
2004-05-17 Vincent Celier
|
|
|
* g-os_lib.adb (Normalize_Pathname.Final_Value): Remove trailing
|
* g-os_lib.adb (Normalize_Pathname.Final_Value): Remove trailing
|
directory separator.
|
directory separator.
|
|
|
* prj-proc.adb (Recursive_Process): Inherit attribute Languages from
|
* prj-proc.adb (Recursive_Process): Inherit attribute Languages from
|
project being extended, if Languages is not declared in extending
|
project being extended, if Languages is not declared in extending
|
project.
|
project.
|
|
|
2004-05-17 Javier Miranda
|
2004-05-17 Javier Miranda
|
|
|
* sem_ch10.adb (Install_Limited_Withed_Unit): Do not install the
|
* sem_ch10.adb (Install_Limited_Withed_Unit): Do not install the
|
limited view of a visible sibling.
|
limited view of a visible sibling.
|
|
|
2004-05-14 Robert Dewar
|
2004-05-14 Robert Dewar
|
|
|
* gnat_ugn.texi: Minor change to -gnatS documentation
|
* gnat_ugn.texi: Minor change to -gnatS documentation
|
|
|
* sprint.adb: Remove some instances of Assert (False) and for this
|
* sprint.adb: Remove some instances of Assert (False) and for this
|
purpose replace them by output of a ??? string.
|
purpose replace them by output of a ??? string.
|
|
|
* checks.adb, exp_aggr.adb, sem_elim.adb: Remove useless pragma
|
* checks.adb, exp_aggr.adb, sem_elim.adb: Remove useless pragma
|
Assert (False).
|
Assert (False).
|
|
|
* lib-writ.adb, lib-load.adb, lib.ads, lib.adb: Remove Dependent_Unit
|
* lib-writ.adb, lib-load.adb, lib.ads, lib.adb: Remove Dependent_Unit
|
flag processing. This was suppressing required dependencies in
|
flag processing. This was suppressing required dependencies in
|
No_Run_Time mode and is not needed since the binder does not generate
|
No_Run_Time mode and is not needed since the binder does not generate
|
references for things in libgnat anyway.
|
references for things in libgnat anyway.
|
|
|
* sem_ch3.adb (Access_Type_Declaration): Reorganize code to avoid GCC
|
* sem_ch3.adb (Access_Type_Declaration): Reorganize code to avoid GCC
|
warning.
|
warning.
|
|
|
2004-05-14 Thomas Quinot
|
2004-05-14 Thomas Quinot
|
|
|
* gnat_ugn.texi: Document AIX-specific issue with initialization of
|
* gnat_ugn.texi: Document AIX-specific issue with initialization of
|
resolver library.
|
resolver library.
|
|
|
* exp_ch4.adb (Insert_Dereference_Action): Do not generate dereference
|
* exp_ch4.adb (Insert_Dereference_Action): Do not generate dereference
|
action for the case of an actual parameter in an init proc call.
|
action for the case of an actual parameter in an init proc call.
|
|
|
2004-05-14 Ed Schonberg
|
2004-05-14 Ed Schonberg
|
|
|
* sem_ch4.adb (Analyze_Selected_Component): If prefix is a protected
|
* sem_ch4.adb (Analyze_Selected_Component): If prefix is a protected
|
subtype, check visible entities in base type.
|
subtype, check visible entities in base type.
|
|
|
* exp_ch7.adb (Clean_Simple_Protected_Objects): Do not generate cleanup
|
* exp_ch7.adb (Clean_Simple_Protected_Objects): Do not generate cleanup
|
actions if the object is a renaming.
|
actions if the object is a renaming.
|
|
|
* sem_ch12.adb (Same_Instantiated_Entity): Predicate for
|
* sem_ch12.adb (Same_Instantiated_Entity): Predicate for
|
Check_Formal_Package_Instance, to determine more precisely when the
|
Check_Formal_Package_Instance, to determine more precisely when the
|
formal and the actual denote the same entity.
|
formal and the actual denote the same entity.
|
|
|
2004-05-14 Javier Miranda
|
2004-05-14 Javier Miranda
|
|
|
* par-ch10.adb (P_Context_Clause): Complete documentation on AI-262
|
* par-ch10.adb (P_Context_Clause): Complete documentation on AI-262
|
|
|
* sem_ch10.adb (Analyze_With_Clause): After analyzed, the entity
|
* sem_ch10.adb (Analyze_With_Clause): After analyzed, the entity
|
corresponding to a private_with must be removed from visibility; it
|
corresponding to a private_with must be removed from visibility; it
|
will be made visible later, just before we analyze the private part of
|
will be made visible later, just before we analyze the private part of
|
the package.
|
the package.
|
(Check_Private_Child_Unit): Allow private_with clauses in public
|
(Check_Private_Child_Unit): Allow private_with clauses in public
|
siblings.
|
siblings.
|
(Install_Siblings): Make visible the private entities of private-withed
|
(Install_Siblings): Make visible the private entities of private-withed
|
siblings.
|
siblings.
|
(Install_Withed_Unit): Do not install the private withed unit if we
|
(Install_Withed_Unit): Do not install the private withed unit if we
|
are compiling a package declaration and the Private_With_OK flag was
|
are compiling a package declaration and the Private_With_OK flag was
|
not set by the caller. These declarations will be installed later,
|
not set by the caller. These declarations will be installed later,
|
just before we analyze the private part of the package.
|
just before we analyze the private part of the package.
|
|
|
* sem_ch3.adb (Analyze_Object_Declaration): In case of errors detected
|
* sem_ch3.adb (Analyze_Object_Declaration): In case of errors detected
|
during the evaluation of the expression that initializes the object,
|
during the evaluation of the expression that initializes the object,
|
decorate it with the expected type to avoid cascade errors.
|
decorate it with the expected type to avoid cascade errors.
|
Code cleanup.
|
Code cleanup.
|
|
|
* sem_ch6.adb (Analyze_Subprogram_Body): If we are compiling a library
|
* sem_ch6.adb (Analyze_Subprogram_Body): If we are compiling a library
|
subprogram we have to install the private_with clauses after its
|
subprogram we have to install the private_with clauses after its
|
specification has been analyzed (as documented in AI-262.TXT).
|
specification has been analyzed (as documented in AI-262.TXT).
|
|
|
* sem_ch8.adb (Has_Private_With): New function. Determines if the
|
* sem_ch8.adb (Has_Private_With): New function. Determines if the
|
current compilation unit has a private with on a given entity.
|
current compilation unit has a private with on a given entity.
|
(Find_Direct_Name): Detect the Beaujolais problem described in
|
(Find_Direct_Name): Detect the Beaujolais problem described in
|
AI-262.TXT
|
AI-262.TXT
|
|
|
* sem_utils.ads, sem_util.adb (Is_Ancestor_Package): New function. It
|
* sem_utils.ads, sem_util.adb (Is_Ancestor_Package): New function. It
|
provides the functionality of the function Is_Ancestor that was
|
provides the functionality of the function Is_Ancestor that was
|
previously available in sem_ch10. It has been renamed to avoid
|
previously available in sem_ch10. It has been renamed to avoid
|
overloading.
|
overloading.
|
|
|
* sprint.adb (Sprint_Node_Actual): Print limited_with clauses
|
* sprint.adb (Sprint_Node_Actual): Print limited_with clauses
|
|
|
2004-05-14 Richard Kenner
|
2004-05-14 Richard Kenner
|
|
|
* utils.c (build_vms_descriptor): Use SImode pointers.
|
* utils.c (build_vms_descriptor): Use SImode pointers.
|
|
|
2004-05-14 Vasiliy Fofanov
|
2004-05-14 Vasiliy Fofanov
|
|
|
* gnat_ugn.texi: Revised chapter "GNAT and Libraries".
|
* gnat_ugn.texi: Revised chapter "GNAT and Libraries".
|
|
|
2004-05-14 GNAT Script
|
2004-05-14 GNAT Script
|
|
|
* Make-lang.in: Makefile automatically updated
|
* Make-lang.in: Makefile automatically updated
|
|
|
2004-05-14 Arnaud Charlet
|
2004-05-14 Arnaud Charlet
|
|
|
Renaming of target specific files for clarity
|
Renaming of target specific files for clarity
|
|
|
* Makefile.in: Rename GNAT target specific files.
|
* Makefile.in: Rename GNAT target specific files.
|
|
|
* 31soccon.ads, 31soliop.ads 35soccon.ads, 3asoccon.ads,
|
* 31soccon.ads, 31soliop.ads 35soccon.ads, 3asoccon.ads,
|
3bsoccon.ads, 3gsoccon.ads, 3hsoccon.ads, 3psoccon.ads,
|
3bsoccon.ads, 3gsoccon.ads, 3hsoccon.ads, 3psoccon.ads,
|
3ssoccon.ads, 3ssoliop.ads, 3veacodu.adb, 3vexpect.adb,
|
3ssoccon.ads, 3ssoliop.ads, 3veacodu.adb, 3vexpect.adb,
|
3vsoccon.ads, 3vsocthi.adb, 3vsocthi.ads, 3vtrasym.adb,
|
3vsoccon.ads, 3vsocthi.adb, 3vsocthi.ads, 3vtrasym.adb,
|
3wsoccon.ads, 3wsocthi.adb, 3wsocthi.ads, 3wsoliop.ads,
|
3wsoccon.ads, 3wsocthi.adb, 3wsocthi.ads, 3wsoliop.ads,
|
3zsoccon.ads, 3zsocthi.adb, 3zsocthi.ads, 41intnam.ads,
|
3zsoccon.ads, 3zsocthi.adb, 3zsocthi.ads, 41intnam.ads,
|
42intnam.ads, 45intnam.ads, 4aintnam.ads, 4cintnam.ads,
|
42intnam.ads, 45intnam.ads, 4aintnam.ads, 4cintnam.ads,
|
4gintnam.ads, 4hexcpol.adb, 4hintnam.ads, 4lintnam.ads,
|
4gintnam.ads, 4hexcpol.adb, 4hintnam.ads, 4lintnam.ads,
|
4nintnam.ads, 4ointnam.ads, 4onumaux.ads, 4pintnam.ads,
|
4nintnam.ads, 4ointnam.ads, 4onumaux.ads, 4pintnam.ads,
|
4sintnam.ads, 4vcaldel.adb, 4vcalend.adb, 4vcalend.ads,
|
4sintnam.ads, 4vcaldel.adb, 4vcalend.adb, 4vcalend.ads,
|
4vintnam.ads, 4wcalend.adb, 4wexcpol.adb, 4wintnam.ads,
|
4vintnam.ads, 4wcalend.adb, 4wexcpol.adb, 4wintnam.ads,
|
4zintnam.ads, 4znumaux.ads, 4zsytaco.adb, 4zsytaco.ads,
|
4zintnam.ads, 4znumaux.ads, 4zsytaco.adb, 4zsytaco.ads,
|
51osinte.adb, 51osinte.ads, 51system.ads,
|
51osinte.adb, 51osinte.ads, 51system.ads,
|
52osinte.adb, 52osinte.ads, 53osinte.ads, 54osinte.ads,
|
52osinte.adb, 52osinte.ads, 53osinte.ads, 54osinte.ads,
|
55osinte.adb, 55osinte.ads, 55system.ads, 56osinte.adb,
|
55osinte.adb, 55osinte.ads, 55system.ads, 56osinte.adb,
|
56osinte.ads, 56system.ads, 56taprop.adb, 56taspri.ads,
|
56osinte.ads, 56system.ads, 56taprop.adb, 56taspri.ads,
|
56tpopsp.adb, 57system.ads, 58system.ads,
|
56tpopsp.adb, 57system.ads, 58system.ads,
|
5amastop.adb, 5aml-tgt.adb, 5aosinte.adb, 5aosinte.ads,
|
5amastop.adb, 5aml-tgt.adb, 5aosinte.adb, 5aosinte.ads,
|
5asystem.ads, 5ataprop.adb, 5atasinf.ads, 5ataspri.ads,
|
5asystem.ads, 5ataprop.adb, 5atasinf.ads, 5ataspri.ads,
|
5atpopsp.adb, 5avxwork.ads, 5bml-tgt.adb, 5bosinte.adb,
|
5atpopsp.adb, 5avxwork.ads, 5bml-tgt.adb, 5bosinte.adb,
|
5bosinte.ads, 5bsystem.ads, 5cosinte.ads, 5csystem.ads,
|
5bosinte.ads, 5bsystem.ads, 5cosinte.ads, 5csystem.ads,
|
5dsystem.ads, 5esystem.ads, 5fintman.adb, 5fosinte.adb,
|
5dsystem.ads, 5esystem.ads, 5fintman.adb, 5fosinte.adb,
|
5fosinte.ads, 5fsystem.ads, 5ftaprop.adb, 5ftasinf.ads,
|
5fosinte.ads, 5fsystem.ads, 5ftaprop.adb, 5ftasinf.ads,
|
5ginterr.adb, 5gintman.adb, 5gmastop.adb, 5gml-tgt.adb,
|
5ginterr.adb, 5gintman.adb, 5gmastop.adb, 5gml-tgt.adb,
|
5gosinte.ads, 5gproinf.adb, 5gproinf.ads, 5gsystem.ads,
|
5gosinte.ads, 5gproinf.adb, 5gproinf.ads, 5gsystem.ads,
|
5gtaprop.adb, 5gtasinf.adb, 5gtasinf.ads, 5gtpgetc.adb,
|
5gtaprop.adb, 5gtasinf.adb, 5gtasinf.ads, 5gtpgetc.adb,
|
5hml-tgt.adb, 5hosinte.adb, 5hosinte.ads, 5hparame.ads,
|
5hml-tgt.adb, 5hosinte.adb, 5hosinte.ads, 5hparame.ads,
|
5hsystem.ads, 5htaprop.adb, 5htaspri.ads, 5htraceb.adb,
|
5hsystem.ads, 5htaprop.adb, 5htaspri.ads, 5htraceb.adb,
|
5iosinte.adb, 5iosinte.ads, 5itaprop.adb, 5itaspri.ads,
|
5iosinte.adb, 5iosinte.ads, 5itaprop.adb, 5itaspri.ads,
|
5ksystem.ads, 5kvxwork.ads, 5lml-tgt.adb, 5losinte.ads,
|
5ksystem.ads, 5kvxwork.ads, 5lml-tgt.adb, 5losinte.ads,
|
5lparame.adb, 5lsystem.ads, 5msystem.ads, 5mvxwork.ads,
|
5lparame.adb, 5lsystem.ads, 5msystem.ads, 5mvxwork.ads,
|
5ninmaop.adb, 5nintman.adb, 5nosinte.ads, 5nsystem.ads,
|
5ninmaop.adb, 5nintman.adb, 5nosinte.ads, 5nsystem.ads,
|
5ntaprop.adb, 5ntaspri.ads, 5ointerr.adb, 5omastop.adb,
|
5ntaprop.adb, 5ntaspri.ads, 5ointerr.adb, 5omastop.adb,
|
5oosinte.adb, 5oosinte.ads, 5oosprim.adb, 5oparame.adb,
|
5oosinte.adb, 5oosinte.ads, 5oosprim.adb, 5oparame.adb,
|
5osystem.ads, 5otaprop.adb, 5otaspri.ads, 5posinte.ads,
|
5osystem.ads, 5otaprop.adb, 5otaspri.ads, 5posinte.ads,
|
5posprim.adb, 5psystem.ads, 5pvxwork.ads, 5sintman.adb,
|
5posprim.adb, 5psystem.ads, 5pvxwork.ads, 5sintman.adb,
|
5sml-tgt.adb, 5sosinte.adb, 5sosinte.ads, 5sosprim.adb,
|
5sml-tgt.adb, 5sosinte.adb, 5sosinte.ads, 5sosprim.adb,
|
5sparame.adb, 5ssystem.ads, 5staprop.adb, 5stasinf.adb,
|
5sparame.adb, 5ssystem.ads, 5staprop.adb, 5stasinf.adb,
|
5stasinf.ads, 5staspri.ads, 5stpopsp.adb, 5svxwork.ads,
|
5stasinf.ads, 5staspri.ads, 5stpopsp.adb, 5svxwork.ads,
|
5tosinte.ads, 5usystem.ads, 5vasthan.adb, 5vdirval.adb,
|
5tosinte.ads, 5usystem.ads, 5vasthan.adb, 5vdirval.adb,
|
5vinmaop.adb, 5vinterr.adb, 5vintman.adb, 5vintman.ads,
|
5vinmaop.adb, 5vinterr.adb, 5vintman.adb, 5vintman.ads,
|
5vmastop.adb, 5vml-tgt.adb, 5vosinte.adb, 5vosinte.ads,
|
5vmastop.adb, 5vml-tgt.adb, 5vosinte.adb, 5vosinte.ads,
|
5vosprim.adb, 5vosprim.ads, 5vparame.ads, 5vsymbol.adb,
|
5vosprim.adb, 5vosprim.ads, 5vparame.ads, 5vsymbol.adb,
|
5vsystem.ads, 5vtaprop.adb, 5vtaspri.ads, 5vtpopde.adb,
|
5vsystem.ads, 5vtaprop.adb, 5vtaspri.ads, 5vtpopde.adb,
|
5vtpopde.ads, 5vtraent.adb, 5vtraent.ads, 5vvaflop.adb,
|
5vtpopde.ads, 5vtraent.adb, 5vtraent.ads, 5vvaflop.adb,
|
5wdirval.adb, 5wgloloc.adb, 5wintman.adb, 5wmemory.adb,
|
5wdirval.adb, 5wgloloc.adb, 5wintman.adb, 5wmemory.adb,
|
5wml-tgt.adb, 5wosinte.ads, 5wosprim.adb, 5wsystem.ads,
|
5wml-tgt.adb, 5wosinte.ads, 5wosprim.adb, 5wsystem.ads,
|
5wtaprop.adb, 5wtaspri.ads, 5xparame.ads, 5xsystem.ads,
|
5wtaprop.adb, 5wtaspri.ads, 5xparame.ads, 5xsystem.ads,
|
5xvxwork.ads, 5yparame.ads, 5ysystem.ads, 5zinterr.adb,
|
5xvxwork.ads, 5yparame.ads, 5ysystem.ads, 5zinterr.adb,
|
5zintman.adb, 5zintman.ads, 5zml-tgt.adb, 5zosinte.adb,
|
5zintman.adb, 5zintman.ads, 5zml-tgt.adb, 5zosinte.adb,
|
5zosinte.ads, 5zosprim.adb, 5zparame.ads, 5zstchop.adb,
|
5zosinte.ads, 5zosprim.adb, 5zparame.ads, 5zstchop.adb,
|
5zsystem.ads, 5ztaprop.adb, 5ztaspri.ads, 5ztfsetr.adb,
|
5zsystem.ads, 5ztaprop.adb, 5ztaspri.ads, 5ztfsetr.adb,
|
5ztpopsp.adb, 6vcpp.adb, 6vcstrea.adb, 6vinterf.ads,
|
5ztpopsp.adb, 6vcpp.adb, 6vcstrea.adb, 6vinterf.ads,
|
7sinmaop.adb, 7sintman.adb, 7sosinte.adb, 7sosprim.adb,
|
7sinmaop.adb, 7sintman.adb, 7sosinte.adb, 7sosprim.adb,
|
7staprop.adb, 7staspri.ads, 7stfsetr.adb, 7stpopsp.adb,
|
7staprop.adb, 7staspri.ads, 7stfsetr.adb, 7stpopsp.adb,
|
7straceb.adb, 7straces.adb, 7strafor.adb, 7strafor.ads,
|
7straceb.adb, 7straces.adb, 7strafor.adb, 7strafor.ads,
|
7stratas.adb, 86numaux.adb, 86numaux.ads: Replaced by files below.
|
7stratas.adb, 86numaux.adb, 86numaux.ads: Replaced by files below.
|
|
|
* a-caldel-vms.adb, a-calend-mingw.adb, a-calend-vms.adb,
|
* a-caldel-vms.adb, a-calend-mingw.adb, a-calend-vms.adb,
|
a-calend-vms.ads, a-dirval-mingw.adb, a-dirval-vms.adb,
|
a-calend-vms.ads, a-dirval-mingw.adb, a-dirval-vms.adb,
|
a-excpol-abort.adb, a-excpol-interix.adb, a-intnam-aix.ads,
|
a-excpol-abort.adb, a-excpol-interix.adb, a-intnam-aix.ads,
|
a-intnam-dummy.ads, a-intnam-freebsd.ads, a-intnam-hpux.ads,
|
a-intnam-dummy.ads, a-intnam-freebsd.ads, a-intnam-hpux.ads,
|
a-intnam-interix.ads, a-intnam-irix.ads, a-intnam-linux.ads,
|
a-intnam-interix.ads, a-intnam-irix.ads, a-intnam-linux.ads,
|
a-intnam-lynxos.ads, a-intnam-mingw.ads, a-intnam-os2.ads,
|
a-intnam-lynxos.ads, a-intnam-mingw.ads, a-intnam-os2.ads,
|
a-intnam-solaris.ads, a-intnam-tru64.ads, a-intnam-unixware.ads,
|
a-intnam-solaris.ads, a-intnam-tru64.ads, a-intnam-unixware.ads,
|
a-intnam-vms.ads, a-intnam-vxworks.ads, a-numaux-libc-x86.ads,
|
a-intnam-vms.ads, a-intnam-vxworks.ads, a-numaux-libc-x86.ads,
|
a-numaux-vxworks.ads, a-numaux-x86.adb, a-numaux-x86.ads,
|
a-numaux-vxworks.ads, a-numaux-x86.adb, a-numaux-x86.ads,
|
a-sytaco-vxworks.adb, a-sytaco-vxworks.ads, g-eacodu-vms.adb,
|
a-sytaco-vxworks.adb, a-sytaco-vxworks.ads, g-eacodu-vms.adb,
|
g-expect-vms.adb, g-soccon-aix.ads, g-soccon-freebsd.ads,
|
g-expect-vms.adb, g-soccon-aix.ads, g-soccon-freebsd.ads,
|
g-soccon-hpux.ads, g-soccon-interix.ads, g-soccon-irix.ads,
|
g-soccon-hpux.ads, g-soccon-interix.ads, g-soccon-irix.ads,
|
g-soccon-mingw.ads, g-soccon-solaris.ads, g-soccon-tru64.ads,
|
g-soccon-mingw.ads, g-soccon-solaris.ads, g-soccon-tru64.ads,
|
g-soccon-unixware.ads, g-soccon-vms.adb, g-soccon-vxworks.ads,
|
g-soccon-unixware.ads, g-soccon-vms.adb, g-soccon-vxworks.ads,
|
g-socthi-mingw.adb, g-socthi-mingw.ads, g-socthi-vms.adb,
|
g-socthi-mingw.adb, g-socthi-mingw.ads, g-socthi-vms.adb,
|
g-socthi-vms.ads, g-socthi-vxworks.adb, g-socthi-vxworks.ads,
|
g-socthi-vms.ads, g-socthi-vxworks.adb, g-socthi-vxworks.ads,
|
g-soliop-mingw.ads, g-soliop-solaris.ads, g-soliop-unixware.ads,
|
g-soliop-mingw.ads, g-soliop-solaris.ads, g-soliop-unixware.ads,
|
g-trasym-vms.adb, i-cpp-vms.adb, i-cstrea-vms.adb,
|
g-trasym-vms.adb, i-cpp-vms.adb, i-cstrea-vms.adb,
|
interfac-vms.ads, mlib-tgt-aix.adb, mlib-tgt-hpux.adb,
|
interfac-vms.ads, mlib-tgt-aix.adb, mlib-tgt-hpux.adb,
|
mlib-tgt-irix.adb, mlib-tgt-linux.adb, mlib-tgt-mingw.adb,
|
mlib-tgt-irix.adb, mlib-tgt-linux.adb, mlib-tgt-mingw.adb,
|
mlib-tgt-solaris.adb, mlib-tgt-tru64.adb, mlib-tgt-vms.adb,
|
mlib-tgt-solaris.adb, mlib-tgt-tru64.adb, mlib-tgt-vms.adb,
|
mlib-tgt-vxworks.adb, s-asthan-vms.adb, s-gloloc-mingw.adb,
|
mlib-tgt-vxworks.adb, s-asthan-vms.adb, s-gloloc-mingw.adb,
|
s-inmaop-dummy.adb, s-inmaop-posix.adb, s-inmaop-vms.adb,
|
s-inmaop-dummy.adb, s-inmaop-posix.adb, s-inmaop-vms.adb,
|
s-interr-dummy.adb, s-interr-sigaction.adb, s-interr-vms.adb,
|
s-interr-dummy.adb, s-interr-sigaction.adb, s-interr-vms.adb,
|
s-interr-vxworks.adb, s-intman-dummy.adb, s-intman-irix.adb,
|
s-interr-vxworks.adb, s-intman-dummy.adb, s-intman-irix.adb,
|
s-intman-irix-athread.adb, s-intman-mingw.adb, s-intman-posix.adb,
|
s-intman-irix-athread.adb, s-intman-mingw.adb, s-intman-posix.adb,
|
s-intman-solaris.adb, s-intman-vms.adb, s-intman-vms.ads,
|
s-intman-solaris.adb, s-intman-vms.adb, s-intman-vms.ads,
|
s-intman-vxworks.adb, s-intman-vxworks.ads, s-mastop-irix.adb,
|
s-intman-vxworks.adb, s-intman-vxworks.ads, s-mastop-irix.adb,
|
s-mastop-tru64.adb, s-mastop-vms.adb, s-mastop-x86.adb,
|
s-mastop-tru64.adb, s-mastop-vms.adb, s-mastop-x86.adb,
|
s-memory-mingw.adb, s-osinte-aix.adb, s-osinte-aix.ads,
|
s-memory-mingw.adb, s-osinte-aix.adb, s-osinte-aix.ads,
|
s-osinte-aix-fsu.ads, s-osinte-dummy.ads, s-osinte-freebsd.adb,
|
s-osinte-aix-fsu.ads, s-osinte-dummy.ads, s-osinte-freebsd.adb,
|
s-osinte-freebsd.ads, s-osinte-fsu.adb, s-osinte-hpux.ads,
|
s-osinte-freebsd.ads, s-osinte-fsu.adb, s-osinte-hpux.ads,
|
s-osinte-hpux-dce.adb, s-osinte-hpux-dce.ads, s-osinte-interix.ads,
|
s-osinte-hpux-dce.adb, s-osinte-hpux-dce.ads, s-osinte-interix.ads,
|
s-osinte-irix.adb, s-osinte-irix.ads, s-osinte-irix-athread.ads,
|
s-osinte-irix.adb, s-osinte-irix.ads, s-osinte-irix-athread.ads,
|
s-osinte-linux.ads, s-osinte-linux-fsu.ads, s-osinte-linux-ia64.ads,
|
s-osinte-linux.ads, s-osinte-linux-fsu.ads, s-osinte-linux-ia64.ads,
|
s-osinte-lynxos-3.adb, s-osinte-lynxos-3.ads, s-osinte-lynxos.adb,
|
s-osinte-lynxos-3.adb, s-osinte-lynxos-3.ads, s-osinte-lynxos.adb,
|
s-osinte-lynxos.ads, s-osinte-mingw.ads, s-osinte-os2.adb,
|
s-osinte-lynxos.ads, s-osinte-mingw.ads, s-osinte-os2.adb,
|
s-osinte-os2.ads, s-osinte-posix.adb, s-osinte-solaris.adb,
|
s-osinte-os2.ads, s-osinte-posix.adb, s-osinte-solaris.adb,
|
s-osinte-solaris.ads, s-osinte-solaris-fsu.ads,
|
s-osinte-solaris.ads, s-osinte-solaris-fsu.ads,
|
s-osinte-solaris-posix.ads, s-osinte-tru64.adb, s-osinte-tru64.ads,
|
s-osinte-solaris-posix.ads, s-osinte-tru64.adb, s-osinte-tru64.ads,
|
s-osinte-unixware.adb, s-osinte-unixware.ads, s-osinte-vms.adb,
|
s-osinte-unixware.adb, s-osinte-unixware.ads, s-osinte-vms.adb,
|
s-osinte-vms.ads, s-osinte-vxworks.adb,
|
s-osinte-vms.ads, s-osinte-vxworks.adb,
|
s-osinte-vxworks.ads, s-osprim-mingw.adb,
|
s-osinte-vxworks.ads, s-osprim-mingw.adb,
|
s-osprim-os2.adb, s-osprim-posix.adb, s-osprim-solaris.adb,
|
s-osprim-os2.adb, s-osprim-posix.adb, s-osprim-solaris.adb,
|
s-osprim-unix.adb, s-osprim-vms.adb, s-osprim-vms.ads,
|
s-osprim-unix.adb, s-osprim-vms.adb, s-osprim-vms.ads,
|
s-osprim-vxworks.adb, s-parame-ae653.ads, s-parame-hpux.ads,
|
s-osprim-vxworks.adb, s-parame-ae653.ads, s-parame-hpux.ads,
|
s-parame-linux.adb, s-parame-os2.adb, s-parame-solaris.adb,
|
s-parame-linux.adb, s-parame-os2.adb, s-parame-solaris.adb,
|
s-parame-vms.ads, s-parame-vms-restrict.ads, s-parame-vxworks.ads,
|
s-parame-vms.ads, s-parame-vms-restrict.ads, s-parame-vxworks.ads,
|
s-proinf-irix-athread.adb, s-proinf-irix-athread.ads,
|
s-proinf-irix-athread.adb, s-proinf-irix-athread.ads,
|
s-stchop-vxworks.adb, s-taprop-dummy.adb,
|
s-stchop-vxworks.adb, s-taprop-dummy.adb,
|
s-taprop-hpux-dce.adb, s-taprop-irix.adb,
|
s-taprop-hpux-dce.adb, s-taprop-irix.adb,
|
s-taprop-irix-athread.adb, s-taprop-linux.adb, s-taprop-lynxos.adb,
|
s-taprop-irix-athread.adb, s-taprop-linux.adb, s-taprop-lynxos.adb,
|
s-taprop-mingw.adb, s-taprop-os2.adb, s-taprop-posix.adb,
|
s-taprop-mingw.adb, s-taprop-os2.adb, s-taprop-posix.adb,
|
s-taprop-solaris.adb, s-taprop-tru64.adb, s-taprop-vms.adb,
|
s-taprop-solaris.adb, s-taprop-tru64.adb, s-taprop-vms.adb,
|
s-taprop-vxworks.adb, s-tasinf-irix.ads, s-tasinf-irix-athread.adb,
|
s-taprop-vxworks.adb, s-tasinf-irix.ads, s-tasinf-irix-athread.adb,
|
s-tasinf-irix-athread.ads, s-tasinf-solaris.adb, s-tasinf-solaris.ads,
|
s-tasinf-irix-athread.ads, s-tasinf-solaris.adb, s-tasinf-solaris.ads,
|
s-tasinf-tru64.ads, s-taspri-dummy.ads, s-taspri-hpux-dce.ads,
|
s-tasinf-tru64.ads, s-taspri-dummy.ads, s-taspri-hpux-dce.ads,
|
s-taspri-linux.ads, s-taspri-lynxos.ads, s-taspri-mingw.ads,
|
s-taspri-linux.ads, s-taspri-lynxos.ads, s-taspri-mingw.ads,
|
s-taspri-os2.ads, s-taspri-posix.ads, s-taspri-solaris.ads,
|
s-taspri-os2.ads, s-taspri-posix.ads, s-taspri-solaris.ads,
|
s-taspri-tru64.ads, s-taspri-vms.ads, s-taspri-vxworks.ads,
|
s-taspri-tru64.ads, s-taspri-vms.ads, s-taspri-vxworks.ads,
|
s-tfsetr-default.adb, s-tfsetr-vxworks.adb, s-tpopde-vms.adb,
|
s-tfsetr-default.adb, s-tfsetr-vxworks.adb, s-tpopde-vms.adb,
|
s-tpopde-vms.ads, s-tpopsp-lynxos.adb, s-tpopsp-posix.adb,
|
s-tpopde-vms.ads, s-tpopsp-lynxos.adb, s-tpopsp-posix.adb,
|
s-tpopsp-posix-foreign.adb, s-tpopsp-solaris.adb, s-tpopsp-vxworks.adb,
|
s-tpopsp-posix-foreign.adb, s-tpopsp-solaris.adb, s-tpopsp-vxworks.adb,
|
s-traceb-hpux.adb, s-traceb-mastop.adb, s-traces-default.adb,
|
s-traceb-hpux.adb, s-traceb-mastop.adb, s-traces-default.adb,
|
s-traent-vms.adb, s-traent-vms.ads, s-trafor-default.adb,
|
s-traent-vms.adb, s-traent-vms.ads, s-trafor-default.adb,
|
s-trafor-default.ads, s-tratas-default.adb, s-vaflop-vms.adb,
|
s-trafor-default.ads, s-tratas-default.adb, s-vaflop-vms.adb,
|
s-vxwork-alpha.ads, s-vxwork-m68k.ads, s-vxwork-mips.ads,
|
s-vxwork-alpha.ads, s-vxwork-m68k.ads, s-vxwork-mips.ads,
|
s-vxwork-ppc.ads, s-vxwork-sparcv9.ads, s-vxwork-xscale.ads,
|
s-vxwork-ppc.ads, s-vxwork-sparcv9.ads, s-vxwork-xscale.ads,
|
symbols-vms.adb, system-aix.ads, system-freebsd-x86.ads,
|
symbols-vms.adb, system-aix.ads, system-freebsd-x86.ads,
|
system-hpux.ads, system-interix.ads, system-irix-n32.ads,
|
system-hpux.ads, system-interix.ads, system-irix-n32.ads,
|
system-irix-o32.ads, system-linux-x86_64.ads,
|
system-irix-o32.ads, system-linux-x86_64.ads,
|
system-linux-x86.ads, system-lynxos-ppc.ads, system-lynxos-x86.ads,
|
system-linux-x86.ads, system-lynxos-ppc.ads, system-lynxos-x86.ads,
|
system-mingw.ads, system-os2.ads, system-solaris-sparc.ads,
|
system-mingw.ads, system-os2.ads, system-solaris-sparc.ads,
|
system-solaris-sparcv9.ads, system-solaris-x86.ads, system-tru64.ads,
|
system-solaris-sparcv9.ads, system-solaris-x86.ads, system-tru64.ads,
|
system-unixware.ads, system-vms.ads, system-vms-zcx.ads,
|
system-unixware.ads, system-vms.ads, system-vms-zcx.ads,
|
system-vxworks-alpha.ads, system-vxworks-m68k.ads,
|
system-vxworks-alpha.ads, system-vxworks-m68k.ads,
|
system-vxworks-mips.ads, system-vxworks-ppc.ads,
|
system-vxworks-mips.ads, system-vxworks-ppc.ads,
|
system-vxworks-sparcv9.ads, system-vxworks-xscale.ads: Replace files
|
system-vxworks-sparcv9.ads, system-vxworks-xscale.ads: Replace files
|
above.
|
above.
|
|
|
2004-05-13 Zack Weinberg
|
2004-05-13 Zack Weinberg
|
|
|
* trans.c (gnat_stabilize_reference_1): Remove case 'b'.
|
* trans.c (gnat_stabilize_reference_1): Remove case 'b'.
|
|
|
2004-05-13 Diego Novillo
|
2004-05-13 Diego Novillo
|
|
|
Merge from tree-ssa-20020619-branch.
|
Merge from tree-ssa-20020619-branch.
|
|
|
* config-lang.in (boot_language, build_by_default): Set
|
* config-lang.in (boot_language, build_by_default): Set
|
to no.
|
to no.
|
* utils.c (unchecked_convert): Use OEP_ONLY_CONST.
|
* utils.c (unchecked_convert): Use OEP_ONLY_CONST.
|
(max_size): Add static chain op for call_expr.
|
(max_size): Add static chain op for call_expr.
|
|
|
2004-05-12 Richard Sandiford
|
2004-05-12 Richard Sandiford
|
|
|
PR target/15331
|
PR target/15331
|
* 5gmastop.adb (Roff): Choose between '4' and '0', not '4' and ' '.
|
* 5gmastop.adb (Roff): Choose between '4' and '0', not '4' and ' '.
|
|
|
2004-05-11 Roger Sayle
|
2004-05-11 Roger Sayle
|
|
|
* utils.c (max_size): Use MIN_EXPR to find the minimum value of a
|
* utils.c (max_size): Use MIN_EXPR to find the minimum value of a
|
COND_EXPR.
|
COND_EXPR.
|
|
|
2004-05-10 Doug Rupp
|
2004-05-10 Doug Rupp
|
|
|
* 5qsystem.ads: Remove Short_Address subtype declaration. Moved to
|
* 5qsystem.ads: Remove Short_Address subtype declaration. Moved to
|
system.aux_dec.
|
system.aux_dec.
|
|
|
* s-auxdec.ads: Add Short_Address subtype (moved here from System).
|
* s-auxdec.ads: Add Short_Address subtype (moved here from System).
|
|
|
* Makefile.in: [VMS]: Add translation for 5qauxdec.ads.
|
* Makefile.in: [VMS]: Add translation for 5qauxdec.ads.
|
|
|
* init.c: [VMS] Macroize LIB$ calls for IA64 and Alpha.
|
* init.c: [VMS] Macroize LIB$ calls for IA64 and Alpha.
|
Fixes undefined symbols in IA64 gnatlib.
|
Fixes undefined symbols in IA64 gnatlib.
|
|
|
* 5vinmaop.adb: Reference s-auxdec for Short_Address.
|
* 5vinmaop.adb: Reference s-auxdec for Short_Address.
|
|
|
* 5xsystem.ads, 5vsystem.ads: Back out last change (addition of subtype
|
* 5xsystem.ads, 5vsystem.ads: Back out last change (addition of subtype
|
Short_Address). This will be moved to system.auxdec.
|
Short_Address). This will be moved to system.auxdec.
|
|
|
2004-05-10 Thomas Quinot
|
2004-05-10 Thomas Quinot
|
|
|
* sem_util.adb: Replace test for presence of a node that is always
|
* sem_util.adb: Replace test for presence of a node that is always
|
present with a call to Discard_Node.
|
present with a call to Discard_Node.
|
|
|
* sem_ch10.adb (Analyze_Compilation_Unit): Remove superfluous call to
|
* sem_ch10.adb (Analyze_Compilation_Unit): Remove superfluous call to
|
Analyze on the library unit node after generation of distribution stub
|
Analyze on the library unit node after generation of distribution stub
|
constructs. The call was a no-op because Unit_Node has already been
|
constructs. The call was a no-op because Unit_Node has already been
|
Analyzed, and the tree fragments for the distribution stubs are
|
Analyzed, and the tree fragments for the distribution stubs are
|
analyzed as they are inserted in Exp_Dist.
|
analyzed as they are inserted in Exp_Dist.
|
Update comment regarding to distribution stubs to reflect that we
|
Update comment regarding to distribution stubs to reflect that we
|
do not generate stub in separate files anymore.
|
do not generate stub in separate files anymore.
|
|
|
* einfo.ads: Clarify the fact that a tagged private type has the
|
* einfo.ads: Clarify the fact that a tagged private type has the
|
E_Record_Type_With_Private Ekind.
|
E_Record_Type_With_Private Ekind.
|
|
|
* erroutc.adb: Minor reformatting
|
* erroutc.adb: Minor reformatting
|
|
|
* erroutc.ads (Max_Msg_Length): Increase to cover possible larger
|
* erroutc.ads (Max_Msg_Length): Increase to cover possible larger
|
values if line length is increased using -gnatyM (noticed during code
|
values if line length is increased using -gnatyM (noticed during code
|
reading).
|
reading).
|
|
|
* eval_fat.adb: Minor reformatting
|
* eval_fat.adb: Minor reformatting
|
Put spaces around exponentiation operator
|
Put spaces around exponentiation operator
|
|
|
2004-05-10 Ed Schonberg
|
2004-05-10 Ed Schonberg
|
|
|
PR ada/15005
|
PR ada/15005
|
* sem_util.adb (Is_Dependent_Component_Of_Mutable_Object): If prefix
|
* sem_util.adb (Is_Dependent_Component_Of_Mutable_Object): If prefix
|
has been rewritten as an explicit dereference, retrieve type of
|
has been rewritten as an explicit dereference, retrieve type of
|
original node to check for possibly unconstrained record type.
|
original node to check for possibly unconstrained record type.
|
|
|
2004-05-10 Ed Schonberg
|
2004-05-10 Ed Schonberg
|
|
|
* exp_ch7.adb (Check_Visibly_Controlled): If given operation is not
|
* exp_ch7.adb (Check_Visibly_Controlled): If given operation is not
|
overriding, use the operation of the parent unconditionally.
|
overriding, use the operation of the parent unconditionally.
|
|
|
* sem_ch4.adb (Remove_Address_Interpretations): Remove address
|
* sem_ch4.adb (Remove_Address_Interpretations): Remove address
|
operation when either operand is a literal, to avoid further
|
operation when either operand is a literal, to avoid further
|
ambiguities.
|
ambiguities.
|
|
|
* sem_ch6.adb (New_Overloaded_Entity): If new entity is inherited and
|
* sem_ch6.adb (New_Overloaded_Entity): If new entity is inherited and
|
overridden by a previous explicit declaration, mark the previous entity
|
overridden by a previous explicit declaration, mark the previous entity
|
as overriding.
|
as overriding.
|
|
|
* sem_disp.adb (Check_Dispatching_Operation): New predicate
|
* sem_disp.adb (Check_Dispatching_Operation): New predicate
|
Is_Visibly_Controlled, to determine whether a declaration of a
|
Is_Visibly_Controlled, to determine whether a declaration of a
|
primitive control operation for a derived type overrides an inherited
|
primitive control operation for a derived type overrides an inherited
|
one. Add warning if the explicit declaration does not override.
|
one. Add warning if the explicit declaration does not override.
|
|
|
2004-05-10 Vincent Celier
|
2004-05-10 Vincent Celier
|
|
|
* gnatls.adb (Gnatls): Initialize Snames, to avoid assertion error in
|
* gnatls.adb (Gnatls): Initialize Snames, to avoid assertion error in
|
some cases when the sources are no longer present.
|
some cases when the sources are no longer present.
|
|
|
* make.adb (Collect_Arguments): Fail if an external source, not part
|
* make.adb (Collect_Arguments): Fail if an external source, not part
|
of any project need to be compiled, when switch -x has not been
|
of any project need to be compiled, when switch -x has not been
|
specified.
|
specified.
|
|
|
* makeusg.adb: Document new switch -x
|
* makeusg.adb: Document new switch -x
|
|
|
* opt.ads (External_Unit_Compilation_Allowed): New Boolean flag,
|
* opt.ads (External_Unit_Compilation_Allowed): New Boolean flag,
|
defaulted to False.
|
defaulted to False.
|
|
|
* switch-m.adb (Scan_Make_Switches): New switch -x
|
* switch-m.adb (Scan_Make_Switches): New switch -x
|
|
|
* vms_data.ads: Add VMS qualifier /NON_PROJECT_UNIT_COMPILATION for
|
* vms_data.ads: Add VMS qualifier /NON_PROJECT_UNIT_COMPILATION for
|
gnatmake switch -x.
|
gnatmake switch -x.
|
|
|
* gnat_ugn.texi: Document new gnatmake switch -x
|
* gnat_ugn.texi: Document new gnatmake switch -x
|
|
|
2004-05-10 Eric Botcazou
|
2004-05-10 Eric Botcazou
|
|
|
* misc.c (gnat_init_options): Set flag_zero_initialized_in_bss to 0.
|
* 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.
|
* utils.c (create_var_decl): Do not modify the DECL_COMMON flag.
|
(process_attributes): Likewise.
|
(process_attributes): Likewise.
|
|
|
2004-05-10 Joel Brobecker
|
2004-05-10 Joel Brobecker
|
|
|
* s-inmaop.ads: Fix spelling mistake in one of the comments.
|
* s-inmaop.ads: Fix spelling mistake in one of the comments.
|
|
|
2004-05-10 Robert Dewar
|
2004-05-10 Robert Dewar
|
|
|
* gnat_ugn.texi: Document that for config pragma files, the maximum
|
* gnat_ugn.texi: Document that for config pragma files, the maximum
|
line length is always 32767.
|
line length is always 32767.
|
|
|
* gnat_rm.texi: For pragma Eliminate, note that concatenation of string
|
* gnat_rm.texi: For pragma Eliminate, note that concatenation of string
|
literals is now allowed.
|
literals is now allowed.
|
|
|
* gnat-style.texi: Remove statement about splitting long lines before
|
* gnat-style.texi: Remove statement about splitting long lines before
|
an operator rather than after, since we do not follow this rule at all.
|
an operator rather than after, since we do not follow this rule at all.
|
Clarify rule (really lack of rule) for spaces around exponentiation
|
Clarify rule (really lack of rule) for spaces around exponentiation
|
|
|
* sem_elim.adb: Allow concatenation of string literals as well as a
|
* sem_elim.adb: Allow concatenation of string literals as well as a
|
single string literal for pragma arguments.
|
single string literal for pragma arguments.
|
|
|
* sem_prag.ads, sem_prag.adb: (Is_Config_Static_String): New function
|
* sem_prag.ads, sem_prag.adb: (Is_Config_Static_String): New function
|
|
|
* a-textio.adb (Terminate_Line): Do not add line feed if nothing
|
* a-textio.adb (Terminate_Line): Do not add line feed if nothing
|
written for append case.
|
written for append case.
|
|
|
* frontend.adb: Changes to avoid checking max line length in config
|
* frontend.adb: Changes to avoid checking max line length in config
|
pragma files.
|
pragma files.
|
|
|
* g-os_lib.ads: Minor reformatting
|
* g-os_lib.ads: Minor reformatting
|
|
|
* mlib-utl.adb: Do not define Max_Line_Length locally (definition was
|
* mlib-utl.adb: Do not define Max_Line_Length locally (definition was
|
wrong in any case. Instead use standard value. Noticed during code
|
wrong in any case. Instead use standard value. Noticed during code
|
reading.
|
reading.
|
|
|
* opt.ads (Max_Line_Length): New field, used to implement removal of
|
* opt.ads (Max_Line_Length): New field, used to implement removal of
|
limitation on length of lines when scanning config pragma files.
|
limitation on length of lines when scanning config pragma files.
|
|
|
* osint.ads, prj-dect.adb, prj-strt.adb, prj-tree.adb,
|
* osint.ads, prj-dect.adb, prj-strt.adb, prj-tree.adb,
|
makeutl.ads, makeutl.adb: Minor reformatting
|
makeutl.ads, makeutl.adb: Minor reformatting
|
|
|
* scn.adb: Do not check line length while scanning config pragma files
|
* scn.adb: Do not check line length while scanning config pragma files
|
Do not check line length while scanning out license information
|
Do not check line length while scanning out license information
|
|
|
* scng.adb: Changes to avoid line length checks while parsing config
|
* scng.adb: Changes to avoid line length checks while parsing config
|
pragma files.
|
pragma files.
|
|
|
2004-05-10 GNAT Script
|
2004-05-10 GNAT Script
|
|
|
* Make-lang.in: Makefile automatically updated
|
* Make-lang.in: Makefile automatically updated
|
|
|
2004-05-05 Arnaud Charlet
|
2004-05-05 Arnaud Charlet
|
|
|
* osint.adb (Find_Program_Name): Fix handling of VMS version
|
* osint.adb (Find_Program_Name): Fix handling of VMS version
|
number.
|
number.
|
|
|
2004-05-05 Emmanuel Briot
|
2004-05-05 Emmanuel Briot
|
|
|
* g-os_lib.ads (Invalid_Time): New constant
|
* g-os_lib.ads (Invalid_Time): New constant
|
|
|
* adaint.h, adaint.c (__gnat_file_time_name, __gnat_file_time_fd): Now
|
* 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.
|
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
|
Now return -1 if the file doesn't exist, instead of a random value
|
|
|
2004-05-05 Robert Dewar
|
2004-05-05 Robert Dewar
|
|
|
* usage.adb: Add line for -gnatR?s switch
|
* usage.adb: Add line for -gnatR?s switch
|
|
|
* sem_ch13.adb, exp_ch2.adb: Minor reformatting
|
* sem_ch13.adb, exp_ch2.adb: Minor reformatting
|
|
|
* g-regpat.ads, g-regpat.adb: Add documentation on handling of Size
|
* g-regpat.ads, g-regpat.adb: Add documentation on handling of Size
|
and for Match (Data_First, Data_last)
|
and for Match (Data_First, Data_last)
|
|
|
* lib-writ.adb (Write_With_Lines): Ensure that correct index number is
|
* lib-writ.adb (Write_With_Lines): Ensure that correct index number is
|
written when we are dealing with multi-unit files.
|
written when we are dealing with multi-unit files.
|
|
|
2004-05-05 Jerome Guitton
|
2004-05-05 Jerome Guitton
|
|
|
* Makefile.in: Remove unused targets and variables.
|
* Makefile.in: Remove unused targets and variables.
|
|
|
2004-05-05 Vincent Celier
|
2004-05-05 Vincent Celier
|
|
|
* switch-m.adb: New gnatmake switch -eI
|
* switch-m.adb: New gnatmake switch -eI
|
|
|
* vms_data.ads: Add VMS equivalents of new gnatclean swith -innn and
|
* vms_data.ads: Add VMS equivalents of new gnatclean swith -innn and
|
of new gnatmake switch -eInnn.
|
of new gnatmake switch -eInnn.
|
|
|
* makegpr.adb: Take into account new parameters Index and Src_Index in
|
* makegpr.adb: Take into account new parameters Index and Src_Index in
|
Prj.Util.
|
Prj.Util.
|
|
|
* clean.adb: Implement support for multi-unit sources, including new
|
* clean.adb: Implement support for multi-unit sources, including new
|
switch -i.
|
switch -i.
|
|
|
* gnatcmd.adb (GNATCmd): Call Prj.Util.Value_Of with new parameter
|
* gnatcmd.adb (GNATCmd): Call Prj.Util.Value_Of with new parameter
|
Src_Index.
|
Src_Index.
|
|
|
* make.ads, make.adb (Insert_Q): New parameter Index, defaulted to 0
|
* make.ads, make.adb (Insert_Q): New parameter Index, defaulted to 0
|
(Extract_From_Q): New out parameter Index
|
(Extract_From_Q): New out parameter Index
|
(Mark, Is_Marked): Subprograms moved to Makeutl
|
(Mark, Is_Marked): Subprograms moved to Makeutl
|
(Switches_Of): New parameter Source_Index
|
(Switches_Of): New parameter Source_Index
|
(Add_Switch): New parameter Index
|
(Add_Switch): New parameter Index
|
(Check): New parameter Source_Index
|
(Check): New parameter Source_Index
|
(Collect_Arguments): New parameter Source_Index
|
(Collect_Arguments): New parameter Source_Index
|
(Collect_Arguments_And_Compile): New parameter Source_Index
|
(Collect_Arguments_And_Compile): New parameter Source_Index
|
(Compile): New parameter Source_Index
|
(Compile): New parameter Source_Index
|
Put subprograms in alphabetical order
|
Put subprograms in alphabetical order
|
Add support for multi-source sources, including in project files.
|
Add support for multi-source sources, including in project files.
|
|
|
* makeutl.ads, makeutl.adb (Unit_Index_Of): New function
|
* makeutl.ads, makeutl.adb (Unit_Index_Of): New function
|
(Mark, Is_Marked, Delete_All_Marks): New subprograms, moved from
|
(Mark, Is_Marked, Delete_All_Marks): New subprograms, moved from
|
Make.
|
Make.
|
|
|
* makeusg.adb: New gnatmake switch -eInnn
|
* makeusg.adb: New gnatmake switch -eInnn
|
|
|
* mlib-prj.adb (Build_Library): Add new parameter Src_Index to call to
|
* mlib-prj.adb (Build_Library): Add new parameter Src_Index to call to
|
Prj.Util.Value_Of.
|
Prj.Util.Value_Of.
|
|
|
* opt.ads (Main_Index): New variable, defaulted to 0.
|
* opt.ads (Main_Index): New variable, defaulted to 0.
|
|
|
* osint.ads, osinte.adb (Add_File): New parameter Index
|
* osint.ads, osinte.adb (Add_File): New parameter Index
|
(Current_Source_Index): New function
|
(Current_Source_Index): New function
|
|
|
* prj.adb: Take into account new components Index and Src_Index
|
* prj.adb: Take into account new components Index and Src_Index
|
|
|
* prj.ads (String_Element): New component Index
|
* prj.ads (String_Element): New component Index
|
(Variable_Value): New component Index
|
(Variable_Value): New component Index
|
(Array_Element): New component Src_Index
|
(Array_Element): New component Src_Index
|
|
|
* prj-attr.adb: Indicate that optional index may be specified for
|
* prj-attr.adb: Indicate that optional index may be specified for
|
attributes Main, Executable, Spec, Body and some of Switches.
|
attributes Main, Executable, Spec, Body and some of Switches.
|
|
|
* prj-attr.ads (Attribute_Kind): New values for optional indexes
|
* prj-attr.ads (Attribute_Kind): New values for optional indexes
|
(Attribute_Record): New component Optional_Index
|
(Attribute_Record): New component Optional_Index
|
|
|
* prj-com.ads (File_Name_Data): New component Index
|
* prj-com.ads (File_Name_Data): New component Index
|
|
|
* prj-dect.adb (Parse_Attribute_Declaration): Process optional index
|
* prj-dect.adb (Parse_Attribute_Declaration): Process optional index
|
|
|
* prj-env.adb (Put): Output optional index
|
* prj-env.adb (Put): Output optional index
|
|
|
* prj-makr.adb: Put indexes for multi-unit sources in SFN pragmas and
|
* prj-makr.adb: Put indexes for multi-unit sources in SFN pragmas and
|
attributes Spec and Body.
|
attributes Spec and Body.
|
|
|
* prj-nmsc.adb: Process optional indexes
|
* prj-nmsc.adb: Process optional indexes
|
|
|
* prj-pp.adb: Ouput "at" for optional indexes
|
* prj-pp.adb: Ouput "at" for optional indexes
|
|
|
* prj-proc.adb: Take into account optional indexes
|
* prj-proc.adb: Take into account optional indexes
|
|
|
* prj-strt.ads, prj-strt.adb (Terms): New Boolean parameter
|
* prj-strt.ads, prj-strt.adb (Terms): New Boolean parameter
|
Optional_Index. For string literal,
|
Optional_Index. For string literal,
|
process optional index when Optional_Index is True.
|
process optional index when Optional_Index is True.
|
(Parse_Expresion): New Boolean parameter Optional_Index
|
(Parse_Expresion): New Boolean parameter Optional_Index
|
|
|
* prj-tree.ads, prj-tree.adb (Source_Index_Of): New function
|
* prj-tree.ads, prj-tree.adb (Source_Index_Of): New function
|
(Set_Source_Index_Of): New procedure
|
(Set_Source_Index_Of): New procedure
|
|
|
* prj-util.adb (Executable_Of, Value_Of): Take into account optional
|
* prj-util.adb (Executable_Of, Value_Of): Take into account optional
|
index.
|
index.
|
|
|
* prj-util.ads (Executable_Of): New parameter Index
|
* prj-util.ads (Executable_Of): New parameter Index
|
(Value_Of (Name_Id, Array_Element_Id) returning Variable_Value):
|
(Value_Of (Name_Id, Array_Element_Id) returning Variable_Value):
|
New parameter Src_Index, defaulted to 0.
|
New parameter Src_Index, defaulted to 0.
|
|
|
2004-05-05 Ed Schonberg
|
2004-05-05 Ed Schonberg
|
|
|
PR ada/15257
|
PR ada/15257
|
* sem_ch3.adb (Access_Definition): If this is an access parameter
|
* sem_ch3.adb (Access_Definition): If this is an access parameter
|
whose designated type is imported through a limited_with clause, do
|
whose designated type is imported through a limited_with clause, do
|
not add the enclosing subprogram to the list of private dependents of
|
not add the enclosing subprogram to the list of private dependents of
|
the type.
|
the type.
|
|
|
2004-05-05 Ed Schonberg
|
2004-05-05 Ed Schonberg
|
|
|
PR ada/15258
|
PR ada/15258
|
* sem_ch6.adb (Base_Types_Match): True if one type is imported through
|
* 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.
|
a limited_with clause, and the other is its non-limited view.
|
|
|
2004-05-05 Thomas Quinot
|
2004-05-05 Thomas Quinot
|
|
|
* cstand.adb (Create_Standard): Initialize Stand.Boolean_Literals.
|
* cstand.adb (Create_Standard): Initialize Stand.Boolean_Literals.
|
|
|
* exp_attr.adb, exp_ch5.adb, exp_ch9.adb, exp_disp.adb,
|
* 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
|
exp_fixd.adb, sem_attr.adb, sem_dist.adb, sem_util.adb: Use
|
Stand.Boolean_Literals to produce references to entities
|
Stand.Boolean_Literals to produce references to entities
|
Standard_False and Standard_True from compile-time computed boolean
|
Standard_False and Standard_True from compile-time computed boolean
|
values.
|
values.
|
|
|
* stand.ads (Boolean_Literals): New variable, provides the entity
|
* stand.ads (Boolean_Literals): New variable, provides the entity
|
values for False and True, for use by the expander.
|
values for False and True, for use by the expander.
|
|
|
2004-05-05 Doug Rupp
|
2004-05-05 Doug Rupp
|
|
|
* 5vinmaop.adb, 5[vx]system.ads: Add Short_Address subtype
|
* 5vinmaop.adb, 5[vx]system.ads: Add Short_Address subtype
|
5vinmaop.adb: Unchecked convert Short_Address vice Address
|
5vinmaop.adb: Unchecked convert Short_Address vice Address
|
|
|
* adaint.c, raise.c: Caste CRTL function return value
|
* adaint.c, raise.c: Caste CRTL function return value
|
to avoid gcc error on 32/64 bit IVMS.
|
to avoid gcc error on 32/64 bit IVMS.
|
|
|
* Makefile.in [VMS]: Use iar archiver if host = Alpha/VMS and
|
* Makefile.in [VMS]: Use iar archiver if host = Alpha/VMS and
|
target = IA64/VMS.
|
target = IA64/VMS.
|
|
|
* init.c[VMS]: Only call Alpha specific __gnat_error_prehandler IN_RTS.
|
* init.c[VMS]: Only call Alpha specific __gnat_error_prehandler IN_RTS.
|
|
|
* 5qsystem.ads (Address): Declare as Long_Integer
|
* 5qsystem.ads (Address): Declare as Long_Integer
|
(Short_Address): Declare as 32 bit subtype of Address
|
(Short_Address): Declare as 32 bit subtype of Address
|
Declare abstract address operations to avoid gratuitous ambiguities.
|
Declare abstract address operations to avoid gratuitous ambiguities.
|
|
|
2004-05-05 Jose Ruiz
|
2004-05-05 Jose Ruiz
|
|
|
* gnat_rm.texi: Use the new restriction Simple_Barriers (AI-249)
|
* gnat_rm.texi: Use the new restriction Simple_Barriers (AI-249)
|
instead of the old Boolean_Entry_Barriers.
|
instead of the old Boolean_Entry_Barriers.
|
Ditto for No_Task_Attributes_Package instead of No_Task_Attributes.
|
Ditto for No_Task_Attributes_Package instead of No_Task_Attributes.
|
|
|
2004-05-05 GNAT Script
|
2004-05-05 GNAT Script
|
|
|
* Make-lang.in: Makefile automatically updated
|
* Make-lang.in: Makefile automatically updated
|
|
|
2004-05-03 Arnaud Charlet
|
2004-05-03 Arnaud Charlet
|
|
|
* 50system.ads, 59system.ads, s-thread.ads: Removed, no longer used.
|
* 50system.ads, 59system.ads, s-thread.ads: Removed, no longer used.
|
|
|
2004-05-03 Olivier Hainque
|
2004-05-03 Olivier Hainque
|
|
|
PR ada/15152
|
PR ada/15152
|
* exp_ch2.adb (Expand_Current_Value): Leave Machine_Code Asm arguments
|
* exp_ch2.adb (Expand_Current_Value): Leave Machine_Code Asm arguments
|
alone. Replacing object references by literals is inappropriate in a
|
alone. Replacing object references by literals is inappropriate in a
|
so low level context.
|
so low level context.
|
|
|
2004-05-03 Arnaud Charlet
|
2004-05-03 Arnaud Charlet
|
|
|
* a-exexpr.adb: Add comments
|
* a-exexpr.adb: Add comments
|
|
|
2004-05-03 Joel Brobecker
|
2004-05-03 Joel Brobecker
|
|
|
* a-tags.adb (Tag_Table): Add Index_Check pragma Suppress. Allows us to
|
* 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
|
declare the Ancestor_Tags array in Type_Specific_Data with a small size
|
without risking a bounds check error when accessing one of its
|
without risking a bounds check error when accessing one of its
|
components.
|
components.
|
(Type_Specific_Data): Define Ancestor_Tags as a small array.
|
(Type_Specific_Data): Define Ancestor_Tags as a small array.
|
This prevents us from hitting a limitation during the debug info
|
This prevents us from hitting a limitation during the debug info
|
generation when using stabs.
|
generation when using stabs.
|
|
|
* a-tags.adb (Dispatch_Table): Define the Prims_Ptr component as a
|
* a-tags.adb (Dispatch_Table): Define the Prims_Ptr component as a
|
small array.
|
small array.
|
This prevents us from hitting a limitation during the debug info
|
This prevents us from hitting a limitation during the debug info
|
generation when using stabs.
|
generation when using stabs.
|
|
|
2004-05-03 Eric Botcazou
|
2004-05-03 Eric Botcazou
|
|
|
lang-specs.h: Remove -gnatz* from specs.
|
lang-specs.h: Remove -gnatz* from specs.
|
|
|
2004-05-03 Vincent Celier
|
2004-05-03 Vincent Celier
|
|
|
* gprmake.adb, makegpr.ads, makegpr.adb: New files.
|
* gprmake.adb, makegpr.ads, makegpr.adb: New files.
|
|
|
* Make-lang.in, Makefile.in: Add gprmake
|
* Make-lang.in, Makefile.in: Add gprmake
|
|
|
2004-05-03 Thomas Quinot
|
2004-05-03 Thomas Quinot
|
|
|
* sem_aggr.adb: Fix typo in comment.
|
* sem_aggr.adb: Fix typo in comment.
|
|
|
2004-05-03 Robert Dewar
|
2004-05-03 Robert Dewar
|
|
|
* make.adb: Minor reformatting
|
* make.adb: Minor reformatting
|
|
|
* rtsfind.ads, rtsfind.adb: (RTU_Loaded): New function
|
* rtsfind.ads, rtsfind.adb: (RTU_Loaded): New function
|
|
|
* sem_attr.adb (Eval_Attribute, case Type_Class): Fix check for address
|
* sem_attr.adb (Eval_Attribute, case Type_Class): Fix check for address
|
so that it works when address is not a private type.
|
so that it works when address is not a private type.
|
|
|
* sem_ch13.adb (Check_Expr_Constants, case N_Integer_Literal): Deal
|
* sem_ch13.adb (Check_Expr_Constants, case N_Integer_Literal): Deal
|
properly with rewritten unchecked conversions. This prevents
|
properly with rewritten unchecked conversions. This prevents
|
order-of-elaboration issues that can otherwise arise.
|
order-of-elaboration issues that can otherwise arise.
|
(Minimum_Size): Don't check size of access types under VMS
|
(Minimum_Size): Don't check size of access types under VMS
|
|
|
* sem_ch4.adb (Remove_Address_Interpretation): New circuit to remove
|
* sem_ch4.adb (Remove_Address_Interpretation): New circuit to remove
|
interpretations of integer literals as type System.Address.
|
interpretations of integer literals as type System.Address.
|
|
|
* sem_util.ads, sem_util.adb (Is_Descendent_Of_Address): New function
|
* sem_util.ads, sem_util.adb (Is_Descendent_Of_Address): New function
|
(Is_Descendent_Of): New function
|
(Is_Descendent_Of): New function
|
|
|
2004-05-03 Jose Ruiz
|
2004-05-03 Jose Ruiz
|
|
|
* sem_prag.adb: Boolean_Entry_Barriers is a synonym of Simple_Barriers.
|
* sem_prag.adb: Boolean_Entry_Barriers is a synonym of Simple_Barriers.
|
Max_Entry_Queue_Depth is a synonym of Max_Entry_Queue_Length.
|
Max_Entry_Queue_Depth is a synonym of Max_Entry_Queue_Length.
|
No_Dynamic_Interrupts is a synonym of No_Dynamic_Attachment.
|
No_Dynamic_Interrupts is a synonym of No_Dynamic_Attachment.
|
|
|
* sem_res.adb: Use the new restriction Max_Entry_Queue_Length instead
|
* sem_res.adb: Use the new restriction Max_Entry_Queue_Length instead
|
of the old Max_Entry_Queue_Depth.
|
of the old Max_Entry_Queue_Depth.
|
|
|
* snames.adb: Boolean_Entry_Barriers is a synonym of Simple_Barriers.
|
* snames.adb: Boolean_Entry_Barriers is a synonym of Simple_Barriers.
|
Max_Entry_Queue_Depth is a synonym of Max_Entry_Queue_Length
|
Max_Entry_Queue_Depth is a synonym of Max_Entry_Queue_Length
|
No_Dynamic_Interrupts is a synonym of No_Dynamic_Attachment
|
No_Dynamic_Interrupts is a synonym of No_Dynamic_Attachment
|
|
|
* snames.ads: New entry for proper handling of Boolean_Entry_Barriers.
|
* 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 Max_Entry_Queue_Depth.
|
New entry for proper handling of No_Dynamic_Interrupts.
|
New entry for proper handling of No_Dynamic_Interrupts.
|
|
|
* s-rident.ads: Adding restriction Simple_Barriers (AI-00249) that
|
* s-rident.ads: Adding restriction Simple_Barriers (AI-00249) that
|
supersedes the GNAT specific restriction Boolean_Entry_Barriers.
|
supersedes the GNAT specific restriction Boolean_Entry_Barriers.
|
Adding restriction Max_Entry_Queue_Length (AI-00249) that supersedes
|
Adding restriction Max_Entry_Queue_Length (AI-00249) that supersedes
|
the GNAT specific restriction Max_Entry_Queue_Depth.
|
the GNAT specific restriction Max_Entry_Queue_Depth.
|
Adding restriction No_Dynamic_Attachment (AI-00249) that supersedes
|
Adding restriction No_Dynamic_Attachment (AI-00249) that supersedes
|
the GNAT specific restriction No_Dynamic_Interrupts.
|
the GNAT specific restriction No_Dynamic_Interrupts.
|
|
|
* restrict.ads, restrict.adb: Use the new restriction Simple_Barriers
|
* restrict.ads, restrict.adb: Use the new restriction Simple_Barriers
|
instead of the old Boolean_Entry_Barriers.
|
instead of the old Boolean_Entry_Barriers.
|
Use the new restriction No_Dynamic_Attachment instead of the old
|
Use the new restriction No_Dynamic_Attachment instead of the old
|
No_Dynamic_Interrupts.
|
No_Dynamic_Interrupts.
|
|
|
* exp_ch9.adb: Check restriction Simple_Barriers (AI-00249) that
|
* exp_ch9.adb: Check restriction Simple_Barriers (AI-00249) that
|
supersedes the GNAT specific restriction Boolean_Entry_Barriers.
|
supersedes the GNAT specific restriction Boolean_Entry_Barriers.
|
|
|
* gnatbind.adb: Use the new restriction Max_Entry_Queue_Length instead
|
* gnatbind.adb: Use the new restriction Max_Entry_Queue_Length instead
|
of the old Max_Entry_Queue_Depth.
|
of the old Max_Entry_Queue_Depth.
|
|
|
2004-05-03 GNAT Script
|
2004-05-03 GNAT Script
|
|
|
* Make-lang.in: Makefile automatically updated
|
* Make-lang.in: Makefile automatically updated
|
|
|
2004-04-29 Ed Schonberg
|
2004-04-29 Ed Schonberg
|
|
|
* checks.adb (Enable_Range_Check): If the prefix of an index component
|
* checks.adb (Enable_Range_Check): If the prefix of an index component
|
is an access to an unconstrained array, perform check unconditionally.
|
is an access to an unconstrained array, perform check unconditionally.
|
|
|
2004-04-29 Richard Kenner
|
2004-04-29 Richard Kenner
|
|
|
* decl.c (gnat_to_gnu_field): Also call make_packable_type if
|
* decl.c (gnat_to_gnu_field): Also call make_packable_type if
|
Component_Clause.
|
Component_Clause.
|
|
|
2004-04-29 Olivier Hainque
|
2004-04-29 Olivier Hainque
|
|
|
* init.c (__gnat_install_handler, __gnat_error_handler): Remove
|
* init.c (__gnat_install_handler, __gnat_error_handler): Remove
|
alternate stack setting. There was no support for the tasking cases
|
alternate stack setting. There was no support for the tasking cases
|
and the changes eventually caused a number of side-effect failures in
|
and the changes eventually caused a number of side-effect failures in
|
the non-tasking case too.
|
the non-tasking case too.
|
|
|
2004-04-29 Eric Botcazou
|
2004-04-29 Eric Botcazou
|
|
|
lang-specs.h: Redirect output to /dev/null if -gnatc or -gnatz or
|
lang-specs.h: Redirect output to /dev/null if -gnatc or -gnatz or
|
-gnats is passed.
|
-gnats is passed.
|
|
|
2004-04-29 Vincent Celier
|
2004-04-29 Vincent Celier
|
|
|
* make.adb (Gnatmake): Increase max size of argument array for
|
* make.adb (Gnatmake): Increase max size of argument array for
|
gnatbind for the potential addition of -F.
|
gnatbind for the potential addition of -F.
|
If there are Stand-Alone Library projects, invoke gnatbind with -F to
|
If there are Stand-Alone Library projects, invoke gnatbind with -F to
|
be sure that elaboration flags will be checked.
|
be sure that elaboration flags will be checked.
|
|
|
* switch-c.adb: Correct call to Scan_Pos for -gnateI
|
* switch-c.adb: Correct call to Scan_Pos for -gnateI
|
|
|
2004-04-29 Thomas Quinot
|
2004-04-29 Thomas Quinot
|
|
|
* sem_warn.adb (Check_References): Move ' may be
|
* sem_warn.adb (Check_References): Move ' may be
|
null' warning out of under Warn_On_No_Value_Assigned.
|
null' warning out of under Warn_On_No_Value_Assigned.
|
|
|
2004-04-29 Ed Falis
|
2004-04-29 Ed Falis
|
|
|
* gnat_ugn.texi: Fixed texi error
|
* gnat_ugn.texi: Fixed texi error
|
|
|
2004-04-29 Robert Dewar
|
2004-04-29 Robert Dewar
|
|
|
* sem_ch4.adb (Remove_Abstract_Operations): Unconditionally remove
|
* sem_ch4.adb (Remove_Abstract_Operations): Unconditionally remove
|
abstract operations if they come from predefined files.
|
abstract operations if they come from predefined files.
|
|
|
* gnat_rm.texi: Fix bad doc for pragma Elaboration_Checks (should be
|
* gnat_rm.texi: Fix bad doc for pragma Elaboration_Checks (should be
|
Dynamic, not RM).
|
Dynamic, not RM).
|
|
|
* s-addope.adb: Correct obvious error in mod function
|
* s-addope.adb: Correct obvious error in mod function
|
|
|
2004-04-28 Andrew W. Reynolds
|
2004-04-28 Andrew W. Reynolds
|
|
|
* Makefile.in: Add target pairs for powerpc darwin*
|
* Makefile.in: Add target pairs for powerpc darwin*
|
tasking support.
|
tasking support.
|
|
|
* a-intnam-darwin.ads, s-osinte-darwin.adb,
|
* a-intnam-darwin.ads, s-osinte-darwin.adb,
|
s-osinte-darwin.ads, system-darwin-ppc.ads: New files.
|
s-osinte-darwin.ads, system-darwin-ppc.ads: New files.
|
|
|
2004-04-28 Ulrich Weigand
|
2004-04-28 Ulrich Weigand
|
|
|
* Makefile.in: Add target macro definitions for s390*-linux*.
|
* Makefile.in: Add target macro definitions for s390*-linux*.
|
* system-linux-s390.ads: New file.
|
* system-linux-s390.ads: New file.
|
* system-linux-s390x.ads: New file.
|
* system-linux-s390x.ads: New file.
|
|
|
2004-04-28 Joseph S. Myers
|
2004-04-28 Joseph S. Myers
|
|
|
* gnat_ugn.texi: Correct argument to @setfilename.
|
* gnat_ugn.texi: Correct argument to @setfilename.
|
|
|
2004-04-28 Ulrich Weigand
|
2004-04-28 Ulrich Weigand
|
|
|
* a-exexpr.adb (Unwind_Word): New data type.
|
* a-exexpr.adb (Unwind_Word): New data type.
|
(Unwind_Exception): Use it as type of Private1 and Private2.
|
(Unwind_Exception): Use it as type of Private1 and Private2.
|
|
|
* raise.c (db_action_for): Fix debug printf.
|
* raise.c (db_action_for): Fix debug printf.
|
|
|
2004-04-27 Ed Schonberg
|
2004-04-27 Ed Schonberg
|
|
|
* a-wtmoio.ads: Formal type must be a modular type, not a signed
|
* a-wtmoio.ads: Formal type must be a modular type, not a signed
|
integer type.
|
integer type.
|
|
|
2004-04-27 Richard Kenner
|
2004-04-27 Richard Kenner
|
|
|
* decl.c (gnat_to_gnu_entity, case object): Call
|
* decl.c (gnat_to_gnu_entity, case object): Call
|
__builtin_update_setjmp_buf.
|
__builtin_update_setjmp_buf.
|
|
|
* gigi.h (update_setjmp_buf): Deleted.
|
* gigi.h (update_setjmp_buf): Deleted.
|
(ADT_update_setjmp_buf_decl, update_setjmp_buf_decl): New.
|
(ADT_update_setjmp_buf_decl, update_setjmp_buf_decl): New.
|
|
|
* misc.c: (update_setjmp_buf): Deleted.
|
* misc.c: (update_setjmp_buf): Deleted.
|
|
|
* trans.c (gnat_to_gnu): Call do_pending_stack_adjust and emit_queue
|
* trans.c (gnat_to_gnu): Call do_pending_stack_adjust and emit_queue
|
around block of RTL.
|
around block of RTL.
|
|
|
* utils.c (init_gigi_decls): Initialize update_setjmp_buf.
|
* utils.c (init_gigi_decls): Initialize update_setjmp_buf.
|
|
|
2004-04-26 Thomas Quinot
|
2004-04-26 Thomas Quinot
|
|
|
* sem_dist.adb, exp_dist.adb: When constructing a RAS value for a local
|
* 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
|
subprogram for which no pragma All_Calls_Remote applies, store the
|
address of the real subprogram in the underlying record type, so local
|
address of the real subprogram in the underlying record type, so local
|
dereferences do not go through the PCS.
|
dereferences do not go through the PCS.
|
|
|
2004-04-26 Robert Dewar
|
2004-04-26 Robert Dewar
|
|
|
* i-c.ads: Add some type qualifications to avoid ambiguities when
|
* i-c.ads: Add some type qualifications to avoid ambiguities when
|
compiling with s-auxdec.ads and a non-private address type.
|
compiling with s-auxdec.ads and a non-private address type.
|
|
|
2004-04-26 Arnaud Charlet
|
2004-04-26 Arnaud Charlet
|
|
|
* Makefile.rtl: Fix error in previous check-in:
|
* Makefile.rtl: Fix error in previous check-in:
|
Add s-addope.o to non tasking object list (rather than tasking object
|
Add s-addope.o to non tasking object list (rather than tasking object
|
list).
|
list).
|
|
|
2004-04-26 Javier Miranda
|
2004-04-26 Javier Miranda
|
|
|
* sem_aggr.adb: Fix typo in comments
|
* sem_aggr.adb: Fix typo in comments
|
(Resolve_Aggr_Expr): Propagate the type to the nested aggregate.
|
(Resolve_Aggr_Expr): Propagate the type to the nested aggregate.
|
Required to check the null-exclusion attribute.
|
Required to check the null-exclusion attribute.
|
|
|
* sem_attr.adb (Resolve_Attribute): Check the accessibility level in
|
* sem_attr.adb (Resolve_Attribute): Check the accessibility level in
|
case of anonymous access types in record and array components. For a
|
case of anonymous access types in record and array components. For a
|
component definition the level is the same of the enclosing composite
|
component definition the level is the same of the enclosing composite
|
type.
|
type.
|
|
|
* sem_ch3.adb (Analyze_Component_Declaration): In case of components
|
* sem_ch3.adb (Analyze_Component_Declaration): In case of components
|
that are anonymous access types the level of accessibility depends on
|
that are anonymous access types the level of accessibility depends on
|
the enclosing type declaration. In order to have this information, set
|
the enclosing type declaration. In order to have this information, set
|
the scope of the anonymous access type to the enclosing record type
|
the scope of the anonymous access type to the enclosing record type
|
declaration.
|
declaration.
|
(Array_Type_Declaration): In case of components that are anonymous
|
(Array_Type_Declaration): In case of components that are anonymous
|
access types the level of accessibility depends on the enclosing type
|
access types the level of accessibility depends on the enclosing type
|
declaration. In order to have this information, set the scope of the
|
declaration. In order to have this information, set the scope of the
|
anonymous access type to the enclosing array type declaration.
|
anonymous access type to the enclosing array type declaration.
|
|
|
* sem_ch3.adb (Array_Type_Declaration): Set the scope of the anonymous
|
* sem_ch3.adb (Array_Type_Declaration): Set the scope of the anonymous
|
access type.
|
access type.
|
|
|
* sem_ch8.adb (Analyze_Object_Renaming): Add check to verify that
|
* sem_ch8.adb (Analyze_Object_Renaming): Add check to verify that
|
renaming of anonymous access-to-constant types allowed if and only if
|
renaming of anonymous access-to-constant types allowed if and only if
|
the renamed object is access-to-constant.
|
the renamed object is access-to-constant.
|
|
|
* sem_util.adb (Type_Access_Level): In case of anonymous access types
|
* sem_util.adb (Type_Access_Level): In case of anonymous access types
|
that are component_definition or discriminants of a nonlimited type,
|
that are component_definition or discriminants of a nonlimited type,
|
the level is the same as that of the enclosing component type.
|
the level is the same as that of the enclosing component type.
|
|
|
2004-04-26 Sergey Rybin
|
2004-04-26 Sergey Rybin
|
|
|
* sem_elim.adb: Some minor code reorganization from code reading. Fix
|
* sem_elim.adb: Some minor code reorganization from code reading. Fix
|
misprint in the function name (File_Name_Match).
|
misprint in the function name (File_Name_Match).
|
|
|
2004-04-23 Laurent Guerby
|
2004-04-23 Laurent Guerby
|
|
|
* Makefile.in: Remove RANLIB_TEST, use -$(RANLIB) including after
|
* Makefile.in: Remove RANLIB_TEST, use -$(RANLIB) including after
|
install.
|
install.
|
|
|
2004-04-23 Rainer Orth
|
2004-04-23 Rainer Orth
|
|
|
* Make-lang.in (GNATBIND_OBJS): Add s-addope.o.
|
* Make-lang.in (GNATBIND_OBJS): Add s-addope.o.
|
|
|
2004-04-23 Emmanuel Briot
|
2004-04-23 Emmanuel Briot
|
|
|
* adaint.c (__gnat_try_lock): No longer requires that the parent
|
* adaint.c (__gnat_try_lock): No longer requires that the parent
|
directory be writable, the directory itself is enough.
|
directory be writable, the directory itself is enough.
|
(gnat_is_absolute_path): Change profile, so that the call from
|
(gnat_is_absolute_path): Change profile, so that the call from
|
GNAT.OS_Lib can be made more efficient.
|
GNAT.OS_Lib can be made more efficient.
|
|
|
* adaint.h (gnat_is_absolute_path): Change profile, so that the call
|
* adaint.h (gnat_is_absolute_path): Change profile, so that the call
|
from GNAT.OS_Lib can be made more efficient.
|
from GNAT.OS_Lib can be made more efficient.
|
|
|
* g-os_lib.adb (Is_Absolute_Path): More efficient implementation, avoid
|
* g-os_lib.adb (Is_Absolute_Path): More efficient implementation, avoid
|
one copy of the file name. Found by code reading.
|
one copy of the file name. Found by code reading.
|
|
|
2004-04-23 Vincent Celier
|
2004-04-23 Vincent Celier
|
|
|
* gnat_ugn.texi: Add documentation for gnatmake switch -eL
|
* gnat_ugn.texi: Add documentation for gnatmake switch -eL
|
Correct documentation on gnatmake switches transmitted to the compiler
|
Correct documentation on gnatmake switches transmitted to the compiler
|
|
|
* ali.ads: Minor comment fix
|
* ali.ads: Minor comment fix
|
|
|
2004-04-23 Javier Miranda
|
2004-04-23 Javier Miranda
|
|
|
* sem_ch6.adb: (Confirming Types): Code cleanup
|
* sem_ch6.adb: (Confirming Types): Code cleanup
|
|
|
* decl.c (gnat_to_gnu_entity): Give support to anonymous access to
|
* decl.c (gnat_to_gnu_entity): Give support to anonymous access to
|
subprogram types: E_Anonymous_Access_Subprogram_Type and
|
subprogram types: E_Anonymous_Access_Subprogram_Type and
|
E_Anonymous_Access_Protected_Subprogram_Type.
|
E_Anonymous_Access_Protected_Subprogram_Type.
|
|
|
2004-04-23 Thomas Quinot
|
2004-04-23 Thomas Quinot
|
|
|
* sem_dist.adb: Add a new paramter to the RAS_Access TSS indicating
|
* 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
|
whether a pragma All_Calls_Remote applies to the subprogram on which
|
'Access is taken.
|
'Access is taken.
|
No functional change is introduced by this revision; the new parameter
|
No functional change is introduced by this revision; the new parameter
|
will be used to allow calls to local RCI subprograms to be optimized
|
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,
|
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.
|
as is already done in the PolyORB implementation of the DSA.
|
|
|
* exp_dist.adb: Add a new paramter to the RAS_Access TSS indicating
|
* 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
|
whether a pragma All_Calls_Remote applies to the subprogram on which
|
'Access is taken.
|
'Access is taken.
|
No functional change is introduced by this revision; the new parameter
|
No functional change is introduced by this revision; the new parameter
|
will be used to allow calls to local RCI subprograms to be optimized
|
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,
|
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.
|
as is already done in the PolyORB implementation of the DSA.
|
|
|
2004-04-23 Robert Dewar
|
2004-04-23 Robert Dewar
|
|
|
* Makefile.rtl: Add entry for s-addope.o in run time library list
|
* 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
|
* Make-lang.in: Add entry for s-addope.o to GNAT1 objects
|
* s-addope.ads, s-addope.adb: New files.
|
* s-addope.ads, s-addope.adb: New files.
|
|
|
* s-carsi8.adb, s-carun8.adb, s-casi16.adb, s-casi32.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,
|
s-casi64.adb, s-caun16.adb, s-caun32.adb, s-caun64.adb,
|
s-finimp.adb, s-geveop.adb, s-stoele.adb: Modifications to allow
|
s-finimp.adb, s-geveop.adb, s-stoele.adb: Modifications to allow
|
System.Address to be non-private and signed.
|
System.Address to be non-private and signed.
|
|
|
* sem_elim.adb: Minor reformatting (fairly extensive)
|
* sem_elim.adb: Minor reformatting (fairly extensive)
|
Some minor code reorganization from code reading
|
Some minor code reorganization from code reading
|
Add a couple of ??? comments
|
Add a couple of ??? comments
|
|
|
2004-04-23 Richard Kenner
|
2004-04-23 Richard Kenner
|
|
|
* trans.c (tree_transform, build_unit_elab): Don't call getdecls.
|
* trans.c (tree_transform, build_unit_elab): Don't call getdecls.
|
(tree_transform, case N_If_Statement): Remove non-determinism.
|
(tree_transform, case N_If_Statement): Remove non-determinism.
|
|
|
* utils.c (begin_subprog_body): Just set DECL_CONTEXT in PARM_DECL.
|
* utils.c (begin_subprog_body): Just set DECL_CONTEXT in PARM_DECL.
|
|
|
2004-04-23 Sergey Rybin
|
2004-04-23 Sergey Rybin
|
|
|
* gnat_rm.texi: Small fixes in the changes made in the 'pragma
|
* gnat_rm.texi: Small fixes in the changes made in the 'pragma
|
Eliminate' section.
|
Eliminate' section.
|
|
|
* snames.ads, snames.adb: Remove Name_Homonym_Number (Homonym_Number is
|
* snames.ads, snames.adb: Remove Name_Homonym_Number (Homonym_Number is
|
no longer used as a parameter name for Eliminate pragma).
|
no longer used as a parameter name for Eliminate pragma).
|
|
|
2004-04-22 Laurent Guerby
|
2004-04-22 Laurent Guerby
|
|
|
PR optimization/14984
|
PR optimization/14984
|
PR optimization/14985
|
PR optimization/14985
|
* trans.c (gigi): Fix non determinism leading to bootstrap
|
* trans.c (gigi): Fix non determinism leading to bootstrap
|
comparison failures.
|
comparison failures.
|
|
|
2004-04-21 Pascal Obry
|
2004-04-21 Pascal Obry
|
|
|
* adaint.c (__gnat_portable_spawn): Quote first argument (argv[0])
|
* adaint.c (__gnat_portable_spawn): Quote first argument (argv[0])
|
passed to spawnvp() to properly handle program pathname with spaces on
|
passed to spawnvp() to properly handle program pathname with spaces on
|
Win32.
|
Win32.
|
|
|
2004-04-21 Emmanuel Briot
|
2004-04-21 Emmanuel Briot
|
|
|
* g-debpoo.adb (Print_Info): Avoid extra work if Display_Slots is False.
|
* g-debpoo.adb (Print_Info): Avoid extra work if Display_Slots is False.
|
(Allocate, Deallocate, Free_Physically): Make sure the tasks are
|
(Allocate, Deallocate, Free_Physically): Make sure the tasks are
|
unlocked in case of exceptions.
|
unlocked in case of exceptions.
|
|
|
2004-04-21 Joel Brobecker
|
2004-04-21 Joel Brobecker
|
|
|
* gigi.h (get_target_no_dollar_in_label): Remove extern declaration.
|
* gigi.h (get_target_no_dollar_in_label): Remove extern declaration.
|
This function does not exist anymore.
|
This function does not exist anymore.
|
|
|
2004-04-21 Thomas Quinot
|
2004-04-21 Thomas Quinot
|
|
|
* gnatbind.adb, gnatlink.adb: Update name of imported C symbol.
|
* gnatbind.adb, gnatlink.adb: Update name of imported C symbol.
|
|
|
* link.c: Move variables to the __gnat name space.
|
* link.c: Move variables to the __gnat name space.
|
|
|
* Makefile.in: list link.o explicitly when needed.
|
* Makefile.in: list link.o explicitly when needed.
|
|
|
* mlib.adb: Remove pragma Linker_Option for "link.o" from mlib.
|
* mlib.adb: Remove pragma Linker_Option for "link.o" from mlib.
|
|
|
2004-04-21 Javier Miranda
|
2004-04-21 Javier Miranda
|
|
|
* einfo.adb (Original_Access_Type): New subprogram
|
* einfo.adb (Original_Access_Type): New subprogram
|
(Set_Original_Access_Type): New subprogram
|
(Set_Original_Access_Type): New subprogram
|
(Write_Field21_Name): Write the name of the new field
|
(Write_Field21_Name): Write the name of the new field
|
|
|
* einfo.ads (Original_Access_Type): New field present in access to
|
* einfo.ads (Original_Access_Type): New field present in access to
|
subprogram types.
|
subprogram types.
|
Addition of two new entities: E_Anonymous_Access_Subprogram_Type, and
|
Addition of two new entities: E_Anonymous_Access_Subprogram_Type, and
|
E_Anonymous_Access_Protected_Subprogram_Type.
|
E_Anonymous_Access_Protected_Subprogram_Type.
|
|
|
* lib-xref.adb (Output_One_Ref): Give support to anonymous access to
|
* lib-xref.adb (Output_One_Ref): Give support to anonymous access to
|
subprogram types.
|
subprogram types.
|
|
|
* lib-xref.ads (Xref_Entity_Letters): Initialize values corresponding
|
* lib-xref.ads (Xref_Entity_Letters): Initialize values corresponding
|
to anonymous access to subprogram types.
|
to anonymous access to subprogram types.
|
|
|
* sem_attr.adb (Resolve_Attribute): Give support to anonymous access
|
* sem_attr.adb (Resolve_Attribute): Give support to anonymous access
|
to subprogram types.
|
to subprogram types.
|
|
|
* sem_ch3.adb (Access_Definition): Complete decoration of entities
|
* sem_ch3.adb (Access_Definition): Complete decoration of entities
|
corresponding to anonymous access to subprogram types.
|
corresponding to anonymous access to subprogram types.
|
(Analyze_Component_Declaration): Add new actual to the call to
|
(Analyze_Component_Declaration): Add new actual to the call to
|
subprogram replace_anonymous_access_to_protected_subprogram.
|
subprogram replace_anonymous_access_to_protected_subprogram.
|
(Array_Type_Declaration): Add new actual to the call to subprogram
|
(Array_Type_Declaration): Add new actual to the call to subprogram
|
replace_anonymous_access_to_protected_subprogram.
|
replace_anonymous_access_to_protected_subprogram.
|
(Process_Discriminants): Add new actual to the call to subprogram
|
(Process_Discriminants): Add new actual to the call to subprogram
|
replace_anonymous_access_to_protected_subprogram.
|
replace_anonymous_access_to_protected_subprogram.
|
(Replace_Anonymous_Access_To_Protected_Subprogram): New formal.
|
(Replace_Anonymous_Access_To_Protected_Subprogram): New formal.
|
|
|
* sem_ch3.ads (Replace_Anonymous_Access_To_Protected_Subprogram): New
|
* sem_ch3.ads (Replace_Anonymous_Access_To_Protected_Subprogram): New
|
formal.
|
formal.
|
|
|
* sem_ch6.adb, sem_type.adb, sem_res.adb: Give support to anonymous
|
* sem_ch6.adb, sem_type.adb, sem_res.adb: Give support to anonymous
|
access to subprogram types.
|
access to subprogram types.
|
|
|
* sem_util.adb (Has_Declarations): Addition of package_specification
|
* sem_util.adb (Has_Declarations): Addition of package_specification
|
nodes.
|
nodes.
|
|
|
2004-04-21 Ed Schonberg
|
2004-04-21 Ed Schonberg
|
|
|
* sem_prag.adb (Make_Inline): If subprogram is a renaming, propagate
|
* sem_prag.adb (Make_Inline): If subprogram is a renaming, propagate
|
inlined flags to renamed entity only if in current unit.
|
inlined flags to renamed entity only if in current unit.
|
|
|
2004-04-21 Thomas Quinot
|
2004-04-21 Thomas Quinot
|
|
|
* s-parint.ads: Add DSA implementation marker.
|
* s-parint.ads: Add DSA implementation marker.
|
|
|
* rtsfind.ads, rtsfind.adb, snames.ads, snames.adb, s-rpc.adb: Use the
|
* rtsfind.ads, rtsfind.adb, snames.ads, snames.adb, s-rpc.adb: Use the
|
value of System.Partition_Interface.DSA_Implementation to determine
|
value of System.Partition_Interface.DSA_Implementation to determine
|
what version of the distributed systems annex is available (no
|
what version of the distributed systems annex is available (no
|
implementation, GLADE, or PolyORB).
|
implementation, GLADE, or PolyORB).
|
|
|
2004-04-21 Joel Brobecker
|
2004-04-21 Joel Brobecker
|
|
|
* targtyps.c (get_target_no_dollar_in_label): Remove, no longer used.
|
* targtyps.c (get_target_no_dollar_in_label): Remove, no longer used.
|
|
|
2004-04-21 Richard Kenner
|
2004-04-21 Richard Kenner
|
|
|
* utils.c (convert, case CONSTRUCTOR, COMPONENT_REF): Do not make node
|
* utils.c (convert, case CONSTRUCTOR, COMPONENT_REF): Do not make node
|
with new type if alias sets differ.
|
with new type if alias sets differ.
|
Fixes ACATS c41103b.
|
Fixes ACATS c41103b.
|
|
|
2004-04-21 Vincent Celier
|
2004-04-21 Vincent Celier
|
|
|
* prj.ads: Remove FORTRAN as an accepted language: not tested yet.
|
* prj.ads: Remove FORTRAN as an accepted language: not tested yet.
|
Add array Lang_Args for the language specific compiling argument
|
Add array Lang_Args for the language specific compiling argument
|
switches.
|
switches.
|
|
|
* gnat_ugn.texi: Explain in more details when a library is rebuilt.
|
* gnat_ugn.texi: Explain in more details when a library is rebuilt.
|
|
|
2004-04-21 Sergey Rybin
|
2004-04-21 Sergey Rybin
|
|
|
* gnat_rm.texi: Update the descripton of the Eliminate pragma
|
* gnat_rm.texi: Update the descripton of the Eliminate pragma
|
according to the recent changes in the format of the parameters of the
|
according to the recent changes in the format of the parameters of the
|
pragma (replacing Homonym_Number with Source_Location).
|
pragma (replacing Homonym_Number with Source_Location).
|
|
|
2004-04-19 Arnaud Charlet
|
2004-04-19 Arnaud Charlet
|
|
|
* 5isystem.ads: Removed, unused.
|
* 5isystem.ads: Removed, unused.
|
|
|
* gnat_rm.texi: Redo 1.13 change.
|
* gnat_rm.texi: Redo 1.13 change.
|
|
|
2004-04-19 Robert Dewar
|
2004-04-19 Robert Dewar
|
|
|
* s-stoele.ads: Clean up definition of Storage_Offset (the new
|
* s-stoele.ads: Clean up definition of Storage_Offset (the new
|
definition is cleaner, avoids the kludge of explicit Standard operator
|
definition is cleaner, avoids the kludge of explicit Standard operator
|
references, and also is consistent with a visible System.Address with
|
references, and also is consistent with a visible System.Address with
|
no visible operations.
|
no visible operations.
|
|
|
* s-geveop.adb: Add declarations to avoid assumption of visible
|
* s-geveop.adb: Add declarations to avoid assumption of visible
|
operations on type System.Address (since these might not be available
|
operations on type System.Address (since these might not be available
|
if Address is a non-private type for which the operations
|
if Address is a non-private type for which the operations
|
are made abstract).
|
are made abstract).
|
|
|
* sem_eval.adb: Minor reformatting
|
* sem_eval.adb: Minor reformatting
|
|
|
* s-carsi8.ads, s-carun8.ads, s-casi16.ads, s-casi32.ads,
|
* 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
|
s-casi64.ads, s-caun16.ads, s-caun32.ads, s-caun64.ads: Minor
|
reformatting (new function spec format).
|
reformatting (new function spec format).
|
|
|
* s-auxdec.adb, s-carsi8.adb, s-carun8.adb, s-casi16.adb,
|
* 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-casi32.adb, s-casi64.adb, s-caun16.adb, s-caun32.adb,
|
s-caun64.adb: Add declarations to avoid assumption of visible
|
s-caun64.adb: Add declarations to avoid assumption of visible
|
operations on type System.Address (since these might not be available
|
operations on type System.Address (since these might not be available
|
if Address is a non-private type for which the operations are made
|
if Address is a non-private type for which the operations are made
|
abstract).
|
abstract).
|
|
|
* lib.ads, lib.adb (Synchronize_Serial_Number): New procedure.
|
* lib.ads, lib.adb (Synchronize_Serial_Number): New procedure.
|
|
|
* exp_intr.adb: Minor comment update
|
* exp_intr.adb: Minor comment update
|
|
|
* exp_aggr.adb, exp_attr.adb, exp_ch13.adb: Minor reformatting.
|
* exp_aggr.adb, exp_attr.adb, exp_ch13.adb: Minor reformatting.
|
|
|
* 5omastop.adb: Add declarations to avoid assumption of visible
|
* 5omastop.adb: Add declarations to avoid assumption of visible
|
operations on type System.Address (since these might not be available
|
operations on type System.Address (since these might not be available
|
if Address is a non-private type for which the operations
|
if Address is a non-private type for which the operations
|
are made abstract).
|
are made abstract).
|
|
|
2004-04-19 Vincent Celier
|
2004-04-19 Vincent Celier
|
|
|
* switch-m.adb: (Scan_Make_Switches): Process new switch -eL
|
* switch-m.adb: (Scan_Make_Switches): Process new switch -eL
|
|
|
* prj-pars.ads (Parse): New Boolean parameter Process_Languages,
|
* prj-pars.ads (Parse): New Boolean parameter Process_Languages,
|
defaulted to Ada.
|
defaulted to Ada.
|
|
|
* prj-proc.adb (Process): New Boolean parameter Process_Languages,
|
* prj-proc.adb (Process): New Boolean parameter Process_Languages,
|
defaulted to Ada.
|
defaulted to Ada.
|
Call Check with Process_Languages.
|
Call Check with Process_Languages.
|
(Check): New Boolean parameter Process_Languages. Call Recursive_Check
|
(Check): New Boolean parameter Process_Languages. Call Recursive_Check
|
with Process_Languages.
|
with Process_Languages.
|
(Recursive_Check): New Boolean parameter Process_Languages. Call
|
(Recursive_Check): New Boolean parameter Process_Languages. Call
|
Nmsc.Ada_Check or Nmsc.Other_Languages_Check according to
|
Nmsc.Ada_Check or Nmsc.Other_Languages_Check according to
|
Process_Languages.
|
Process_Languages.
|
|
|
* prj-proc.ads (Process): New Boolean parameter Process_Languages,
|
* prj-proc.ads (Process): New Boolean parameter Process_Languages,
|
|
|
* prj-util.ads, prj-util.adb (Executable_Of): New Boolean
|
* prj-util.ads, prj-util.adb (Executable_Of): New Boolean
|
parameter Ada_Main, defaulted to True.
|
parameter Ada_Main, defaulted to True.
|
Check for Ada specific characteristics only when Ada_Main is True.
|
Check for Ada specific characteristics only when Ada_Main is True.
|
|
|
* opt.ads: (Follow_Links): New Boolean flag for gnatmake
|
* opt.ads: (Follow_Links): New Boolean flag for gnatmake
|
|
|
* prj.adb: (Project_Empty): Add new Project_Data components.
|
* prj.adb: (Project_Empty): Add new Project_Data components.
|
|
|
* prj.ads: New types and tables for non Ada languages.
|
* prj.ads: New types and tables for non Ada languages.
|
(Project_Data): New components Languages, Impl_Suffixes,
|
(Project_Data): New components Languages, Impl_Suffixes,
|
First_Other_Source, Last_Other_Source, Imported_Directories_Switches,
|
First_Other_Source, Last_Other_Source, Imported_Directories_Switches,
|
Include_Path, Include_Data_Set.
|
Include_Path, Include_Data_Set.
|
|
|
* prj-env.ads, prj-env.adb: Minor reformatting
|
* prj-env.ads, prj-env.adb: Minor reformatting
|
|
|
* prj-nmsc.ads, prj-nmsc.adb: (Other_Languages_Check): New procedure
|
* prj-nmsc.ads, prj-nmsc.adb: (Other_Languages_Check): New procedure
|
Put subprograms in alphabetical order
|
Put subprograms in alphabetical order
|
|
|
* prj-pars.adb (Parse): New Boolean parameter Process_Languages,
|
* prj-pars.adb (Parse): New Boolean parameter Process_Languages,
|
defaulted to Ada; Call Prj.Proc.Process with Process_Languages and
|
defaulted to Ada; Call Prj.Proc.Process with Process_Languages and
|
Opt.Follow_Links.
|
Opt.Follow_Links.
|
|
|
* mlib-prj.adb: Back out modification in last version, as they are
|
* mlib-prj.adb: Back out modification in last version, as they are
|
incorrect.
|
incorrect.
|
(Build_Library.Check_Libs): Remove useless pragma Warnings (Off)
|
(Build_Library.Check_Libs): Remove useless pragma Warnings (Off)
|
|
|
* make.adb: (Mains): Moved to package Makeutl
|
* make.adb: (Mains): Moved to package Makeutl
|
(Linker_Opts): Moved to package Makeutl
|
(Linker_Opts): Moved to package Makeutl
|
(Is_External_Assignment): Moved to package Makeutl
|
(Is_External_Assignment): Moved to package Makeutl
|
(Test_If_Relative_Path): Moved to package Makeutl
|
(Test_If_Relative_Path): Moved to package Makeutl
|
(Gnatmake): Move sorting of linker options to function
|
(Gnatmake): Move sorting of linker options to function
|
Makeutl.Linker_Options_Switches.
|
Makeutl.Linker_Options_Switches.
|
|
|
* makeutl.ads, makeutl.adb: New files.
|
* makeutl.ads, makeutl.adb: New files.
|
|
|
* Makefile.in: Add makeutl.o to the object files for gnatmake
|
* Makefile.in: Add makeutl.o to the object files for gnatmake
|
|
|
* makeusg.adb: Add line for new switch -eL.
|
* makeusg.adb: Add line for new switch -eL.
|
|
|
* gnatls.adb (Image): New function.
|
* gnatls.adb (Image): New function.
|
(Output_Unit): If in verbose mode, output the list of restrictions
|
(Output_Unit): If in verbose mode, output the list of restrictions
|
specified by pragmas Restrictions.
|
specified by pragmas Restrictions.
|
|
|
* 5bml-tgt.adb, 5vml-tgt.adb (Build_Dynamic_Library): Do not use
|
* 5bml-tgt.adb, 5vml-tgt.adb (Build_Dynamic_Library): Do not use
|
Text_IO.
|
Text_IO.
|
|
|
* a-calend.adb (Split): Shift the date by multiple of 56 years, if
|
* a-calend.adb (Split): Shift the date by multiple of 56 years, if
|
needed, to put it in the range 1970 (included) - 2026 (excluded).
|
needed, to put it in the range 1970 (included) - 2026 (excluded).
|
(Time_Of): Do not shift Unix_Min_Year (1970).
|
(Time_Of): Do not shift Unix_Min_Year (1970).
|
Shift the date by multiple of 56 years, if needed, to put it in the
|
Shift the date by multiple of 56 years, if needed, to put it in the
|
range 1970 (included) - 2026 (excluded).
|
range 1970 (included) - 2026 (excluded).
|
|
|
* adaint.h, adaint.c (__gnat_set_executable): New function.
|
* adaint.h, adaint.c (__gnat_set_executable): New function.
|
|
|
2004-04-19 Richard Kenner
|
2004-04-19 Richard Kenner
|
|
|
* trans.c (tree_transform, case N_Subprogram_Body): Temporarily push
|
* trans.c (tree_transform, case N_Subprogram_Body): Temporarily push
|
and pop GC context.
|
and pop GC context.
|
(tree_transform, case N_Procedure_Call): Fix typo in setting TREE_TYPE.
|
(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_Label): Don't set LABEL_STMT_FIRST_IN_EH.
|
(tree_transform, case N_Procedure_Call_Statement): Build a tree.
|
(tree_transform, case N_Procedure_Call_Statement): Build a tree.
|
(tree_transform, case N_Code_Statement): Likewise.
|
(tree_transform, case N_Code_Statement): Likewise.
|
(gnat_expand_stmt, case LABEL_STMT): Don't look at
|
(gnat_expand_stmt, case LABEL_STMT): Don't look at
|
LABEL_STMT_FIRST_IN_EH.
|
LABEL_STMT_FIRST_IN_EH.
|
(gnat_expand_stmt, case ASM_STMT): New case.
|
(gnat_expand_stmt, case ASM_STMT): New case.
|
|
|
* utils2.c (build_unary_op): Properly set TREE_READONLY of
|
* utils2.c (build_unary_op): Properly set TREE_READONLY of
|
UNCONSTRAINED_ARRAY_REF.
|
UNCONSTRAINED_ARRAY_REF.
|
|
|
* utils.c (poplevel): Temporarily push/pop GC context around inline
|
* utils.c (poplevel): Temporarily push/pop GC context around inline
|
function expansion.
|
function expansion.
|
|
|
* decl.c (maybe_variable): Properly set TREE_READONLY of
|
* decl.c (maybe_variable): Properly set TREE_READONLY of
|
UNCONSTRAINED_ARRAY_REF.
|
UNCONSTRAINED_ARRAY_REF.
|
(make_packable_type): Only reference TYPE_IS_PADDING_P for RECORD_TYPE.
|
(make_packable_type): Only reference TYPE_IS_PADDING_P for RECORD_TYPE.
|
|
|
* ada-tree.def: (ASM_STMT): New.
|
* ada-tree.def: (ASM_STMT): New.
|
|
|
* ada-tree.h: (LABEL_STMT_FIRST_IN_EH): Deleted.
|
* ada-tree.h: (LABEL_STMT_FIRST_IN_EH): Deleted.
|
(ASM_STMT_TEMPLATE, ASM_STMT_OUTPUT, ASM_STMT_ORIG_OUT,
|
(ASM_STMT_TEMPLATE, ASM_STMT_OUTPUT, ASM_STMT_ORIG_OUT,
|
ASM_STMT_INPUT): New.
|
ASM_STMT_INPUT): New.
|
(ASM_STMT_CLOBBER): Likewise.
|
(ASM_STMT_CLOBBER): Likewise.
|
|
|
2004-04-19 Thomas Quinot
|
2004-04-19 Thomas Quinot
|
|
|
* a-except.adb, s-parint.ads, s-parint.adb, types.ads, types.h: Use
|
* 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
|
general rcheck mechanism to raise Program_Error for E.4(18), instead
|
of a custom raiser in System.Partition_Interface.
|
of a custom raiser in System.Partition_Interface.
|
Part of general cleanup work before PolyORB integration.
|
Part of general cleanup work before PolyORB integration.
|
|
|
* snames.ads, snames.adb: Add new runtime library entities and names
|
* snames.ads, snames.adb: Add new runtime library entities and names
|
for PolyORB DSA.
|
for PolyORB DSA.
|
|
|
* sem_dist.ads, sem_dist.adb (Get_Subprogram_Id): Move from sem_dist to
|
* sem_dist.ads, sem_dist.adb (Get_Subprogram_Id): Move from sem_dist to
|
exp_dist.
|
exp_dist.
|
(Build_Subprogram_Id): New subprogram provided by exp_dist
|
(Build_Subprogram_Id): New subprogram provided by exp_dist
|
Code reorganisation in preparation for PolyORB integration.
|
Code reorganisation in preparation for PolyORB integration.
|
|
|
* exp_dist.ads, exp_dist.adb (Get_Subprogram_Id): Move from sem_dist to
|
* exp_dist.ads, exp_dist.adb (Get_Subprogram_Id): Move from sem_dist to
|
exp_dist.
|
exp_dist.
|
(Build_Subprogram_Id): New subprogram provided by exp_dist
|
(Build_Subprogram_Id): New subprogram provided by exp_dist
|
|
|
* sem_ch4.adb (Analyze_One_Call): Fix error message for mismatch in
|
* sem_ch4.adb (Analyze_One_Call): Fix error message for mismatch in
|
actual parameter types for call to dereference of an
|
actual parameter types for call to dereference of an
|
access-to-subprogram type.
|
access-to-subprogram type.
|
|
|
* rtsfind.ads: Add new runtime library entities and names for PolyORB
|
* rtsfind.ads: Add new runtime library entities and names for PolyORB
|
DSA.
|
DSA.
|
|
|
* gnatlink.adb (Value): Remove. Use Interfaces.C.Strings.Value
|
* gnatlink.adb (Value): Remove. Use Interfaces.C.Strings.Value
|
instead, which has the same behaviour here since we never pass it a
|
instead, which has the same behaviour here since we never pass it a
|
NULL pointer.
|
NULL pointer.
|
|
|
* link.c (run_path_option, Solaris case): Use -Wl, as for other
|
* link.c (run_path_option, Solaris case): Use -Wl, as for other
|
platforms.
|
platforms.
|
|
|
* Makefile.in: adjust object file lists for gnatlink and gnatmake
|
* Makefile.in: adjust object file lists for gnatlink and gnatmake
|
to account for new dependency upon Interfaces.C.Strings + link.o
|
to account for new dependency upon Interfaces.C.Strings + link.o
|
For x86 FreeBSD, use 86numaux.
|
For x86 FreeBSD, use 86numaux.
|
|
|
* make.adb, gnatcmd.adb: Linker_Library_Path_Option has been moved up
|
* make.adb, gnatcmd.adb: Linker_Library_Path_Option has been moved up
|
from Mlib.Tgt to Mlib.
|
from Mlib.Tgt to Mlib.
|
|
|
* mlib.ads, mlib.adb (Linker_Library_Path_Option): New subprogram, now
|
* mlib.ads, mlib.adb (Linker_Library_Path_Option): New subprogram, now
|
target-independent.
|
target-independent.
|
|
|
* mlib-tgt.ads, mlib-tgt.adb (Linker_Library_Path_Option): Remove
|
* mlib-tgt.ads, mlib-tgt.adb (Linker_Library_Path_Option): Remove
|
target-specific versions of this subprogram, now implemented as a
|
target-specific versions of this subprogram, now implemented as a
|
target-independent function in Mlib.
|
target-independent function in Mlib.
|
|
|
* 5aml-tgt.adb, 5bml-tgt.adb, 5gml-tgt.adb, 5hml-tgt.adb, 5lml-tgt.adb,
|
* 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
|
5sml-tgt.adb, 5vml-tgt.adb, 5zml-tgt.adb, 5wml-tgt.adb
|
(Linker_Library_Path_Option): Remove target-specific versions of this
|
(Linker_Library_Path_Option): Remove target-specific versions of this
|
subprogram, now implemented as a target-independent function in Mlib.
|
subprogram, now implemented as a target-independent function in Mlib.
|
|
|
* atree.adb: (Allocate_Initialize_Node): New subprogram.
|
* atree.adb: (Allocate_Initialize_Node): New subprogram.
|
Factors out node table slots allocation.
|
Factors out node table slots allocation.
|
(Fix_Parents): New subprogram.
|
(Fix_Parents): New subprogram.
|
Encapsulate the pattern of fixing up parent pointers for syntactic
|
Encapsulate the pattern of fixing up parent pointers for syntactic
|
children of a rewritten node.
|
children of a rewritten node.
|
(New_Copy_Tree): Use New_Copy to copy non-entity nodes.
|
(New_Copy_Tree): Use New_Copy to copy non-entity nodes.
|
(Rewrite): Use New_Copy when creating saved copy of original node.
|
(Rewrite): Use New_Copy when creating saved copy of original node.
|
(Replace): Use Copy_Node to copy nodes.
|
(Replace): Use Copy_Node to copy nodes.
|
|
|
2004-04-19 Javier Miranda
|
2004-04-19 Javier Miranda
|
|
|
* sprint.adb (Sprint_Node_Actual): Give support to the new
|
* sprint.adb (Sprint_Node_Actual): Give support to the new
|
Access_To_Subprogram node available in Access_Definition nodes. In
|
Access_To_Subprogram node available in Access_Definition nodes. In
|
addition, give support to the AI-231 node fields: null-exclusion,
|
addition, give support to the AI-231 node fields: null-exclusion,
|
all-present, constant-present.
|
all-present, constant-present.
|
|
|
* sem_util.ads, sem_util.adb: (Has_Declarations): New subprogram
|
* sem_util.ads, sem_util.adb: (Has_Declarations): New subprogram
|
|
|
* sinfo.ads, sinfo.adb:
|
* sinfo.ads, sinfo.adb:
|
New field Access_To_Subprogram_Definition in Access_Definition nodes
|
New field Access_To_Subprogram_Definition in Access_Definition nodes
|
|
|
* sem_ch6.adb (Process_Formals): Move here the code that creates and
|
* sem_ch6.adb (Process_Formals): Move here the code that creates and
|
decorates internal subtype declaration corresponding to the
|
decorates internal subtype declaration corresponding to the
|
null-excluding formal. This code was previously in Set_Actual_Subtypes.
|
null-excluding formal. This code was previously in Set_Actual_Subtypes.
|
In addition, carry out some code cleanup on this code. In case of
|
In addition, carry out some code cleanup on this code. In case of
|
access to protected subprogram call
|
access to protected subprogram call
|
Replace_Anonymous_Access_To_Protected_Subprogram.
|
Replace_Anonymous_Access_To_Protected_Subprogram.
|
(Set_Actual_Subtypes): Code cleanup.
|
(Set_Actual_Subtypes): Code cleanup.
|
|
|
* sem_ch8.adb (Analyze_Object_Renaming): Remove un-necessary call to
|
* sem_ch8.adb (Analyze_Object_Renaming): Remove un-necessary call to
|
Find_Type in case of anonymous access renamings. Add warning in case of
|
Find_Type in case of anonymous access renamings. Add warning in case of
|
null-excluding attribute used in anonymous access renaming.
|
null-excluding attribute used in anonymous access renaming.
|
|
|
* sem_ch3.ads (Replace_Anonymous_Access_To_Protected_Subprogram): New
|
* sem_ch3.ads (Replace_Anonymous_Access_To_Protected_Subprogram): New
|
subprogram
|
subprogram
|
|
|
* sem_ch3.adb (Replace_Anonymous_Access_To_Protected_Subprogram): New
|
* sem_ch3.adb (Replace_Anonymous_Access_To_Protected_Subprogram): New
|
subprogram.
|
subprogram.
|
(Access_Definition): In case of anonymous access to subprograms call
|
(Access_Definition): In case of anonymous access to subprograms call
|
the corresponding semantic routine to decorate the node.
|
the corresponding semantic routine to decorate the node.
|
(Access_Subprogram_Declaration): Addition of some comments indicating
|
(Access_Subprogram_Declaration): Addition of some comments indicating
|
some code that probably should be added here. Detected by comparison
|
some code that probably should be added here. Detected by comparison
|
with the access_definition subprogram.
|
with the access_definition subprogram.
|
(Analyze_Component_Declaration): In case of access to protected
|
(Analyze_Component_Declaration): In case of access to protected
|
subprogram call Replace_Anonymous_Access_To_Protected.
|
subprogram call Replace_Anonymous_Access_To_Protected.
|
(Array_Type_Declaration): In case of access to protected subprogram call
|
(Array_Type_Declaration): In case of access to protected subprogram call
|
Replace_Anonymous_Access_To_Protected_Subprogram.
|
Replace_Anonymous_Access_To_Protected_Subprogram.
|
(Process_Discriminants): In case of access to protected subprogram call
|
(Process_Discriminants): In case of access to protected subprogram call
|
Replace_Anonymous_Access_To_Protected_Subprogram.
|
Replace_Anonymous_Access_To_Protected_Subprogram.
|
|
|
* par.adb (P_Access_Definition): New formal that indicates if the
|
* par.adb (P_Access_Definition): New formal that indicates if the
|
null-exclusion part was present.
|
null-exclusion part was present.
|
(P_Access_Type_Definition): New formal that indicates if the caller has
|
(P_Access_Type_Definition): New formal that indicates if the caller has
|
already parsed the null-excluding part.
|
already parsed the null-excluding part.
|
|
|
* par-ch3.adb (P_Subtype_Declaration): Code cleanup.
|
* par-ch3.adb (P_Subtype_Declaration): Code cleanup.
|
(P_Identifier_Declarations): Code cleanup and give support to renamings
|
(P_Identifier_Declarations): Code cleanup and give support to renamings
|
of anonymous access to subprogram types.
|
of anonymous access to subprogram types.
|
(P_Derived_Type_Def_Or_Private_Ext_Decl): Code cleanup.
|
(P_Derived_Type_Def_Or_Private_Ext_Decl): Code cleanup.
|
(P_Array_Type_Definition): Give support to AI-254.
|
(P_Array_Type_Definition): Give support to AI-254.
|
(P_Component_Items): Give support to AI-254.
|
(P_Component_Items): Give support to AI-254.
|
(P_Access_Definition): New formal that indicates if the header was
|
(P_Access_Definition): New formal that indicates if the header was
|
already parsed by the caller.
|
already parsed by the caller.
|
(P_Access_Type_Definition): New formal that indicates if the caller has
|
(P_Access_Type_Definition): New formal that indicates if the caller has
|
already parsed the null-excluding part.
|
already parsed the null-excluding part.
|
|
|
* par-ch6.adb (P_Formal_Part): Add the null-excluding parameter to the
|
* par-ch6.adb (P_Formal_Part): Add the null-excluding parameter to the
|
call to P_Access_Definition.
|
call to P_Access_Definition.
|
|
|
2004-04-19 Geert Bosch
|
2004-04-19 Geert Bosch
|
|
|
* checks.adb (Apply_Float_Conversion_Check): New procedure to implement
|
* checks.adb (Apply_Float_Conversion_Check): New procedure to implement
|
the delicate semantics of floating-point to integer conversion.
|
the delicate semantics of floating-point to integer conversion.
|
(Apply_Type_Conversion_Checks): Use Apply_Float_Conversion_Check.
|
(Apply_Type_Conversion_Checks): Use Apply_Float_Conversion_Check.
|
|
|
* eval_fat.adb (Machine_Mantissa): Moved to spec.
|
* eval_fat.adb (Machine_Mantissa): Moved to spec.
|
(Machine_Radix): New function.
|
(Machine_Radix): New function.
|
|
|
* eval_fat.ads (Machine_Mantissa): Moved from body for use in
|
* eval_fat.ads (Machine_Mantissa): Moved from body for use in
|
conversion checks.
|
conversion checks.
|
(Machine_Radix): New function also for use in conversion checks.
|
(Machine_Radix): New function also for use in conversion checks.
|
|
|
2004-04-19 Ed Schonberg
|
2004-04-19 Ed Schonberg
|
|
|
* par-prag.adb (Source_File_Name_Project): Fix typo in error message.
|
* par-prag.adb (Source_File_Name_Project): Fix typo in error message.
|
|
|
* exp_ch9.adb (Expand_Access_Protected_Subprogram_Type): Call analyze
|
* exp_ch9.adb (Expand_Access_Protected_Subprogram_Type): Call analyze
|
to decorate the access-to-protected subprogram and the equivalent type.
|
to decorate the access-to-protected subprogram and the equivalent type.
|
|
|
* checks.adb (Null_Exclusion_Static_Checks): Code cleanup. Give support
|
* checks.adb (Null_Exclusion_Static_Checks): Code cleanup. Give support
|
to anonymous access to subprogram types.
|
to anonymous access to subprogram types.
|
|
|
* exp_ch4.adb (Expand_N_In): Preserve Static flag before
|
* exp_ch4.adb (Expand_N_In): Preserve Static flag before
|
constant-folding, for legality checks in contexts that require an RM
|
constant-folding, for legality checks in contexts that require an RM
|
static expression.
|
static expression.
|
|
|
* exp_ch6.adb (Expand_N_Function_Call): If call may generate large
|
* exp_ch6.adb (Expand_N_Function_Call): If call may generate large
|
temporary but stack checking is not enabled, increment serial number
|
temporary but stack checking is not enabled, increment serial number
|
to so that symbol generation is consistent with and without stack
|
to so that symbol generation is consistent with and without stack
|
checking.
|
checking.
|
|
|
* exp_util.ads, exp_util.adb (May_Generate_Large_Temp): Predicate is
|
* exp_util.ads, exp_util.adb (May_Generate_Large_Temp): Predicate is
|
independent on whether stack checking is enabled, caller must check
|
independent on whether stack checking is enabled, caller must check
|
the corresponding flag.
|
the corresponding flag.
|
|
|
* sem_ch3.adb (Constrain_Index): Index bounds given by attributes need
|
* sem_ch3.adb (Constrain_Index): Index bounds given by attributes need
|
range checks.
|
range checks.
|
(Build_Derived_Concurrent_Type): Inherit Is_Constrained flag from
|
(Build_Derived_Concurrent_Type): Inherit Is_Constrained flag from
|
parent if it has discriminants.
|
parent if it has discriminants.
|
(Build_Derived_Private_Type): Constructed full view does
|
(Build_Derived_Private_Type): Constructed full view does
|
not come from source.
|
not come from source.
|
(Process_Discriminants): Default discriminants on a tagged type are
|
(Process_Discriminants): Default discriminants on a tagged type are
|
legal if this is the internal completion of a private untagged
|
legal if this is the internal completion of a private untagged
|
derivation.
|
derivation.
|
|
|
* sem_ch6.adb (Set_Actual_Subtypes): The generated declaration needs
|
* sem_ch6.adb (Set_Actual_Subtypes): The generated declaration needs
|
no constraint checks, because it corresponds to an existing object.
|
no constraint checks, because it corresponds to an existing object.
|
|
|
* sem_prag.adb (Process_Convention): Pragma applies
|
* sem_prag.adb (Process_Convention): Pragma applies
|
only to subprograms in the same declarative part, i.e. the same unit,
|
only to subprograms in the same declarative part, i.e. the same unit,
|
not the same scope.
|
not the same scope.
|
|
|
* sem_res.adb (Valid_Conversion): In an instance or inlined body,
|
* sem_res.adb (Valid_Conversion): In an instance or inlined body,
|
ignore type mismatch on a numeric conversion if expression comes from
|
ignore type mismatch on a numeric conversion if expression comes from
|
expansion.
|
expansion.
|
|
|
2004-04-19 Sergey Rybin
|
2004-04-19 Sergey Rybin
|
|
|
* sem_elim.adb (Process_Eliminate_Pragma): Remove the processing for
|
* sem_elim.adb (Process_Eliminate_Pragma): Remove the processing for
|
Homonym_Number parameter, add processing for Source_Location parameter
|
Homonym_Number parameter, add processing for Source_Location parameter
|
corresponding.
|
corresponding.
|
(Check_Eliminated): Remove the check for homonym numbers, add the check
|
(Check_Eliminated): Remove the check for homonym numbers, add the check
|
for source location traces.
|
for source location traces.
|
|
|
* sem_elim.ads (Process_Eliminate_Pragma): Replace Arg_Homonym_Number
|
* sem_elim.ads (Process_Eliminate_Pragma): Replace Arg_Homonym_Number
|
with Arg_Source_Location corresponding to the changes in the format of
|
with Arg_Source_Location corresponding to the changes in the format of
|
the pragma.
|
the pragma.
|
|
|
* sem_prag.adb: (Analyze_Pragma): Changes in the processing of
|
* sem_prag.adb: (Analyze_Pragma): Changes in the processing of
|
Eliminate pragma corresponding to the changes in the format of the
|
Eliminate pragma corresponding to the changes in the format of the
|
pragma: Homonym_Number is replaced with Source_Location, two ways of
|
pragma: Homonym_Number is replaced with Source_Location, two ways of
|
distinguishing homonyms are mutially-exclusive.
|
distinguishing homonyms are mutially-exclusive.
|
|
|
2004-04-19 Joel Brobecker
|
2004-04-19 Joel Brobecker
|
|
|
* get_targ.ads (Get_No_Dollar_In_Label): Remove.
|
* get_targ.ads (Get_No_Dollar_In_Label): Remove.
|
|
|
* exp_dbug.adb (Output_Homonym_Numbers_Suffix): Remove use of
|
* exp_dbug.adb (Output_Homonym_Numbers_Suffix): Remove use of
|
No_Dollar_In_Label, no longer necessary, as it is always True.
|
No_Dollar_In_Label, no longer necessary, as it is always True.
|
(Strip_Suffixes): Likewise.
|
(Strip_Suffixes): Likewise.
|
|
|
2004-04-19 Gary Dismukes
|
2004-04-19 Gary Dismukes
|
|
|
* s-stalib.ads (type Exception_Code): Use Integer'Size for exponent of
|
* s-stalib.ads (type Exception_Code): Use Integer'Size for exponent of
|
modulus for compatibility with size clause on targets with 16-bit
|
modulus for compatibility with size clause on targets with 16-bit
|
Integer.
|
Integer.
|
|
|
* layout.adb (Discrimify): In the case of private types, set Vtyp to
|
* layout.adb (Discrimify): In the case of private types, set Vtyp to
|
full type to fix type mismatches on calls to size functions for
|
full type to fix type mismatches on calls to size functions for
|
discriminant-dependent array components.
|
discriminant-dependent array components.
|
|
|
2004-04-19 Jerome Guitton
|
2004-04-19 Jerome Guitton
|
|
|
* Makefile.in (gnatlib-zcx): New target, for building a ZCX run-time
|
* Makefile.in (gnatlib-zcx): New target, for building a ZCX run-time
|
lib.
|
lib.
|
|
|
2004-04-19 Pascal Obry
|
2004-04-19 Pascal Obry
|
|
|
* mdll-utl.adb (Locate): New version is idempotent.
|
* mdll-utl.adb (Locate): New version is idempotent.
|
|
|
2004-04-17 Laurent Guerby
|
2004-04-17 Laurent Guerby
|
|
|
PR ada/14988 (partial)
|
PR ada/14988 (partial)
|
* impunit.adb: Fix typo.
|
* impunit.adb: Fix typo.
|
|
|
2004-04-14 Nathanael Nerode
|
2004-04-14 Nathanael Nerode
|
|
|
* Make-lang.in: Remove obsolete rts-none, rts-cert, install-rts-none,
|
* Make-lang.in: Remove obsolete rts-none, rts-cert, install-rts-none,
|
and install-rts-cert targets. Remove all gnatlib and gnattools
|
and install-rts-cert targets. Remove all gnatlib and gnattools
|
targets and all other rts-* targets (moved to libada). Remove (now)
|
targets and all other rts-* targets (moved to libada). Remove (now)
|
unused Make variables CHMOD, CHMOD_AX_FLAGS, shext, THREAD_KIND,
|
unused Make variables CHMOD, CHMOD_AX_FLAGS, shext, THREAD_KIND,
|
TRACE, GNATLIBFLAGS, GNATLIBCFLAGS.
|
TRACE, GNATLIBFLAGS, GNATLIBCFLAGS.
|
|
|
2004-04-08 Richard Kenner
|
2004-04-08 Richard Kenner
|
|
|
* trans.c (tree_transform): Shortcut returning error_mark_node for
|
* trans.c (tree_transform): Shortcut returning error_mark_node for
|
statements in annotate_only_mode.
|
statements in annotate_only_mode.
|
(tree_transform, case N_Label, case N_Return_Statement,
|
(tree_transform, case N_Label, case N_Return_Statement,
|
N_Goto_Statement): Make statement tree instead of generating code.
|
N_Goto_Statement): Make statement tree instead of generating code.
|
(tree_transform, case N_Assignment_Statement): No longer check
|
(tree_transform, case N_Assignment_Statement): No longer check
|
type_annotate_only.
|
type_annotate_only.
|
(gnat_expand_stmt, case GOTO_STMT, case LABEL_STMT, case
|
(gnat_expand_stmt, case GOTO_STMT, case LABEL_STMT, case
|
RETURN_STMT): New.
|
RETURN_STMT): New.
|
(first_nondeleted_insn, build_block_stmt, make_expr_stmt_from_rtl):
|
(first_nondeleted_insn, build_block_stmt, make_expr_stmt_from_rtl):
|
New fcns.
|
New fcns.
|
(gnat_to_gnu): Collect any RTL generated and deal with it.
|
(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_And_Then): Refine when have non-null RTL_EXPR.
|
(tree_transform case N_If_Statement): Rewrite to make IF_STMT.
|
(tree_transform case N_If_Statement): Rewrite to make IF_STMT.
|
(gnat_expand_stmt, case BLOCK_STMT, IF_STMT): New cases.
|
(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 (GOTO_STMT, LABEL_STMT, RETURN_STMT): New tree nodes.
|
|
|
* ada-tree.def (EXPR_STMT): Fix typo in name.
|
* ada-tree.def (EXPR_STMT): Fix typo in name.
|
(BLOCK_STMT, IF_STMT): New nodes.
|
(BLOCK_STMT, IF_STMT): New nodes.
|
|
|
* ada-tree.h (GOTO_STMT_LABEL, LABEL_STMT_LABEL,
|
* ada-tree.h (GOTO_STMT_LABEL, LABEL_STMT_LABEL,
|
LABEL_STMT_FIRST_IN_EH): New macros.
|
LABEL_STMT_FIRST_IN_EH): New macros.
|
(RETURN_STMT_EXPR): Likewise.
|
(RETURN_STMT_EXPR): Likewise.
|
|
|
* ada-tree.h: (BLOCK_STMT_LIST, IF_STMT_COND, IF_STMT_TRUE,
|
* ada-tree.h: (BLOCK_STMT_LIST, IF_STMT_COND, IF_STMT_TRUE,
|
IF_STMT_ELSEIF, IF_STMT_ELSE): New macros.
|
IF_STMT_ELSEIF, IF_STMT_ELSE): New macros.
|
|
|
2004-04-08 Thomas Quinot
|
2004-04-08 Thomas Quinot
|
|
|
* atree.ads: Correct documentation on extended nodes.
|
* atree.ads: Correct documentation on extended nodes.
|
|
|
* link.c: Set run_path_option for FreeBSD.
|
* link.c: Set run_path_option for FreeBSD.
|
|
|
2004-04-08 Vincent Celier
|
2004-04-08 Vincent Celier
|
|
|
* mlib-prj.adb (Build_Library.Check_Libs): On OpenVMS, if dec.ali is
|
* mlib-prj.adb (Build_Library.Check_Libs): On OpenVMS, if dec.ali is
|
one of the ALI file, do not link with DEC lib.
|
one of the ALI file, do not link with DEC lib.
|
|
|
* par.adb Remove the last two characters ("%s" or "%b") when checking
|
* par.adb Remove the last two characters ("%s" or "%b") when checking
|
if a language defined unit may be recompiled.
|
if a language defined unit may be recompiled.
|
|
|
2004-04-08 Ed Schonberg
|
2004-04-08 Ed Schonberg
|
|
|
* sem_ch4.adb (Remove_Abstract_Operations): Improve error message when
|
* sem_ch4.adb (Remove_Abstract_Operations): Improve error message when
|
removal of abstract operation leaves no possible interpretation for
|
removal of abstract operation leaves no possible interpretation for
|
expression.
|
expression.
|
|
|
* sem_eval.adb (Eval_Qualified_Expression): Use
|
* sem_eval.adb (Eval_Qualified_Expression): Use
|
Set_Raises_Constraint_Error on node when needed, so that it does not
|
Set_Raises_Constraint_Error on node when needed, so that it does not
|
get optimized away by subsequent optimizations.
|
get optimized away by subsequent optimizations.
|
|
|
* sem_res.adb (Resolve_Intrinsic_Operator): Save interpretations of
|
* sem_res.adb (Resolve_Intrinsic_Operator): Save interpretations of
|
operands even when they are not wrapped in a type conversion.
|
operands even when they are not wrapped in a type conversion.
|
|
|
2004-04-08 Olivier Hainque
|
2004-04-08 Olivier Hainque
|
|
|
* sem_prag.adb (Set_Exported): Warn about making static as result of
|
* 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
|
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
|
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
|
together with imported or exported exceptions, and we don't want the
|
user to be warned about something he didn't write.
|
user to be warned about something he didn't write.
|
|
|
2004-04-08 Thomas Quinot
|
2004-04-08 Thomas Quinot
|
|
|
* sem_util.adb (Note_Possible_Modification): Reorganize to remove code
|
* sem_util.adb (Note_Possible_Modification): Reorganize to remove code
|
duplication between normal entities and those declared as renamings.
|
duplication between normal entities and those declared as renamings.
|
No functional change.
|
No functional change.
|
|
|
* s-fileio.ads (Form): Remove pragma Inline, as we cannot currently
|
* s-fileio.ads (Form): Remove pragma Inline, as we cannot currently
|
inline functions returning an unconstrained result.
|
inline functions returning an unconstrained result.
|
|
|
2004-04-08 Eric Botcazou
|
2004-04-08 Eric Botcazou
|
|
|
* utils.c (type_for_mode): Handle BLKmode and VOIDmode properly, to
|
* utils.c (type_for_mode): Handle BLKmode and VOIDmode properly, to
|
conform to what other front-ends do.
|
conform to what other front-ends do.
|
|
|
2004-04-08 Doug Rupp
|
2004-04-08 Doug Rupp
|
|
|
* 5vml-tgt.adb: Use Gas instead of VMS Macro to build auto init shared
|
* 5vml-tgt.adb: Use Gas instead of VMS Macro to build auto init shared
|
libraries.
|
libraries.
|
|
|
2004-04-06 Pascal Obry
|
2004-04-06 Pascal Obry
|
|
|
* adaint.c (DIR_SEPARATOR): Properly set DIR_SEPARATOR on Win32.
|
* adaint.c (DIR_SEPARATOR): Properly set DIR_SEPARATOR on Win32.
|
|
|
* osint.adb (Program_Name): Do not look past a directory separator.
|
* osint.adb (Program_Name): Do not look past a directory separator.
|
|
|
2004-04-06 Thomas Quinot
|
2004-04-06 Thomas Quinot
|
|
|
* atree.adb: Update comment (Rewrite_Substitute_Node no longer exists).
|
* atree.adb: Update comment (Rewrite_Substitute_Node no longer exists).
|
|
|
* exp_ch6.adb (Rewrite_Function_Call): Clarify documentation of
|
* exp_ch6.adb (Rewrite_Function_Call): Clarify documentation of
|
requirement for preserving a copy of the original assignment node.
|
requirement for preserving a copy of the original assignment node.
|
|
|
* sinfo.ads: Update comment (Original_Tree -> Original_Node).
|
* sinfo.ads: Update comment (Original_Tree -> Original_Node).
|
|
|
2004-04-06 Olivier Hainque
|
2004-04-06 Olivier Hainque
|
|
|
(__gnat_initialize [Vxworks]): Enable references to the crtstuff bits
|
(__gnat_initialize [Vxworks]): Enable references to the crtstuff bits
|
when supported.
|
when supported.
|
|
|
2004-04-06 Ed Schonberg
|
2004-04-06 Ed Schonberg
|
|
|
* sem_ch4.adb (Remove_Abstract_Operations): Extend previous changes to
|
* sem_ch4.adb (Remove_Abstract_Operations): Extend previous changes to
|
operator calls in functional notation, and apply
|
operator calls in functional notation, and apply
|
Universal_Interpretation to operands, not to their type.
|
Universal_Interpretation to operands, not to their type.
|
|
|
2004-04-06 Robert Dewar
|
2004-04-06 Robert Dewar
|
|
|
* 5wdirval.adb: Minor reformatting
|
* 5wdirval.adb: Minor reformatting
|
|
|
2004-04-06 Ed Falis
|
2004-04-06 Ed Falis
|
|
|
* gnat_rm.texi: Improve a reference to the GCC manual
|
* gnat_rm.texi: Improve a reference to the GCC manual
|
|
|
2004-04-05 Vincent Celier
|
2004-04-05 Vincent Celier
|
|
|
* adaint.h, adaint.c: Add function __gnat_named_file_length
|
* adaint.h, adaint.c: Add function __gnat_named_file_length
|
|
|
* impunit.adb: Add Ada.Directories to the list
|
* impunit.adb: Add Ada.Directories to the list
|
|
|
* Makefile.in: Add VMS and Windows versions of
|
* Makefile.in: Add VMS and Windows versions of
|
Ada.Directories.Validity package body.
|
Ada.Directories.Validity package body.
|
|
|
* Makefile.rtl: Add a-direct and a-dirval
|
* Makefile.rtl: Add a-direct and a-dirval
|
|
|
* mlib-tgt.ads: Minor comment update.
|
* mlib-tgt.ads: Minor comment update.
|
|
|
* a-dirval.ads, a-dirval.adb, 5vdirval.adb, 5wdirval.adb,
|
* a-dirval.ads, a-dirval.adb, 5vdirval.adb, 5wdirval.adb,
|
a-direct.ads, a-direct.adb: New files.
|
a-direct.ads, a-direct.adb: New files.
|
|
|
2004-04-05 Vincent Celier
|
2004-04-05 Vincent Celier
|
|
|
PR ada/13620
|
PR ada/13620
|
* make.adb (Scan_Make_Arg): Pass any -fxxx switches to gnatlink, not
|
* make.adb (Scan_Make_Arg): Pass any -fxxx switches to gnatlink, not
|
just to the compiler.
|
just to the compiler.
|
|
|
2004-04-05 Robert Dewar
|
2004-04-05 Robert Dewar
|
|
|
* a-except.adb (Exception_Name_Simple): Make sure lower bound of
|
* a-except.adb (Exception_Name_Simple): Make sure lower bound of
|
returned string is 1.
|
returned string is 1.
|
|
|
* ali-util.adb: Use proper specific form for Warnings (Off, entity)
|
* ali-util.adb: Use proper specific form for Warnings (Off, entity)
|
|
|
* eval_fat.ads: Minor reformatting
|
* eval_fat.ads: Minor reformatting
|
|
|
* g-curexc.ads: Document that lower bound of returned string values
|
* g-curexc.ads: Document that lower bound of returned string values
|
is always one.
|
is always one.
|
|
|
* gnatlink.adb: Add ??? comment for previous change
|
* gnatlink.adb: Add ??? comment for previous change
|
(need to document why this is VMS specific)
|
(need to document why this is VMS specific)
|
|
|
* s-stoele.ads: Minor reformatting
|
* s-stoele.ads: Minor reformatting
|
|
|
* tbuild.ads: Minor reformatting throughout (new function specs)
|
* tbuild.ads: Minor reformatting throughout (new function specs)
|
|
|
* par-ch10.adb (P_Context_Clause): Handle comma instead of semicolon
|
* par-ch10.adb (P_Context_Clause): Handle comma instead of semicolon
|
after WITH.
|
after WITH.
|
|
|
* scng.adb: Minor reformatting
|
* scng.adb: Minor reformatting
|
|
|
2004-04-05 Geert Bosch
|
2004-04-05 Geert Bosch
|
|
|
* eval_fat.adb (Machine): Remove unnecessary suppression of warning.
|
* eval_fat.adb (Machine): Remove unnecessary suppression of warning.
|
(Leading_Part): Still perform truncation to machine number if the
|
(Leading_Part): Still perform truncation to machine number if the
|
specified radix_digits is greater or equal to machine_mantissa.
|
specified radix_digits is greater or equal to machine_mantissa.
|
|
|
2004-04-05 Javier Miranda
|
2004-04-05 Javier Miranda
|
|
|
* par-ch3.adb: Complete documentation of previous change
|
* par-ch3.adb: Complete documentation of previous change
|
Correct wrong syntax documentation of the OBJECT_DECLARATION rule
|
Correct wrong syntax documentation of the OBJECT_DECLARATION rule
|
(aliased must appear before constant).
|
(aliased must appear before constant).
|
|
|
* par-ch4.adb: Complete documentation of previous change.
|
* par-ch4.adb: Complete documentation of previous change.
|
|
|
* par-ch6.adb: Complete documentation of previous change.
|
* par-ch6.adb: Complete documentation of previous change.
|
|
|
* sinfo.ads: Fix typo in commment.
|
* sinfo.ads: Fix typo in commment.
|
|
|
2004-04-05 Ed Schonberg
|
2004-04-05 Ed Schonberg
|
|
|
* sem_ch3.adb (Inherit_Components): If derived type is private and has
|
* sem_ch3.adb (Inherit_Components): If derived type is private and has
|
stored discriminants, use its discriminants to constrain parent type,
|
stored discriminants, use its discriminants to constrain parent type,
|
as is done for non-private derived record types.
|
as is done for non-private derived record types.
|
|
|
* sem_ch4.adb (Remove_Abstract_Operations): New subprogram to implement
|
* sem_ch4.adb (Remove_Abstract_Operations): New subprogram to implement
|
Ada 2005 AI-310: an abstract non-dispatching operation is not a
|
Ada 2005 AI-310: an abstract non-dispatching operation is not a
|
candidate interpretation in an overloaded call.
|
candidate interpretation in an overloaded call.
|
|
|
* tbuild.adb (Unchecked_Convert_To): Preserve conversion node if
|
* tbuild.adb (Unchecked_Convert_To): Preserve conversion node if
|
expression is Null and target type is not an access type (e.g. a
|
expression is Null and target type is not an access type (e.g. a
|
non-private address type).
|
non-private address type).
|
|
|
2004-04-05 Thomas Quinot
|
2004-04-05 Thomas Quinot
|
|
|
* exp_ch6.adb (Rewrite_Function_Call): When rewriting an assignment
|
* exp_ch6.adb (Rewrite_Function_Call): When rewriting an assignment
|
statement whose right-hand side is an inlined call, save a copy of the
|
statement whose right-hand side is an inlined call, save a copy of the
|
original assignment subtree to preserve enough consistency for
|
original assignment subtree to preserve enough consistency for
|
Analyze_Assignment to proceed.
|
Analyze_Assignment to proceed.
|
|
|
* sem_ch5.adb (Analyze_Assignment): Remove a costly copy of the
|
* sem_ch5.adb (Analyze_Assignment): Remove a costly copy of the
|
complete assignment subtree which is now unnecessary, as the expansion
|
complete assignment subtree which is now unnecessary, as the expansion
|
of inlined call has been improved to preserve a consistent assignment
|
of inlined call has been improved to preserve a consistent assignment
|
tree. Note_Possible_Modification must be called only
|
tree. Note_Possible_Modification must be called only
|
after checks have been applied, or else unnecessary checks will
|
after checks have been applied, or else unnecessary checks will
|
be generated.
|
be generated.
|
|
|
* sem_util.adb (Note_Possible_Modification): Reorganise the handling
|
* sem_util.adb (Note_Possible_Modification): Reorganise the handling
|
of explicit dereferences that do not Come_From_Source:
|
of explicit dereferences that do not Come_From_Source:
|
- be selective on cases where we must go back to the dereferenced
|
- be selective on cases where we must go back to the dereferenced
|
pointer (an assignment to an implicit dereference must not be
|
pointer (an assignment to an implicit dereference must not be
|
recorded as modifying the pointer);
|
recorded as modifying the pointer);
|
- do not rely on Original_Node being present (Analyze_Assignment
|
- do not rely on Original_Node being present (Analyze_Assignment
|
calls Note_Possible_Modification on a copied tree).
|
calls Note_Possible_Modification on a copied tree).
|
|
|
* sem_warn.adb (Check_References): When an unset reference to a pointer
|
* sem_warn.adb (Check_References): When an unset reference to a pointer
|
that is never assigned is encountered, prefer ' may be null'
|
that is never assigned is encountered, prefer ' may be null'
|
warning over ' is never assigned a value'.
|
warning over ' is never assigned a value'.
|
|
|
2004-04-05 Ramon Fernandez
|
2004-04-05 Ramon Fernandez
|
|
|
* tracebak.c: Change STOP_FRAME in ppc vxworks to be compliant with
|
* tracebak.c: Change STOP_FRAME in ppc vxworks to be compliant with
|
the ABI.
|
the ABI.
|
|
|
2004-04-05 Olivier Hainque
|
2004-04-05 Olivier Hainque
|
|
|
* 5gmastop.adb (Pop_Frame): Comment out the pragma Linker_Option for
|
* 5gmastop.adb (Pop_Frame): Comment out the pragma Linker_Option for
|
libexc. We currently don't reference anything in this library and
|
libexc. We currently don't reference anything in this library and
|
linking it in triggers linker warnings we don't want to see.
|
linking it in triggers linker warnings we don't want to see.
|
|
|
* init.c: Update comments.
|
* init.c: Update comments.
|
|
|
2004-04-05 Richard Kenner
|
2004-04-05 Richard Kenner
|
|
|
* decl.c (gnat_to_gnu_entity): Use TYPE_READONLY.
|
* decl.c (gnat_to_gnu_entity): Use TYPE_READONLY.
|
* utils.c (create_field_decl): Likewise.
|
* utils.c (create_field_decl): Likewise.
|
* utils2.c (build_unary_op, gnat_build_constructor): Likewise.
|
* utils2.c (build_unary_op, gnat_build_constructor): Likewise.
|
|
|
2004-04-02 Arnaud Charlet
|
2004-04-02 Arnaud Charlet
|
|
|
* gnat-style.texi, gnat_rm.texi, gnat_ugn.texi: Remove RCS tags.
|
* gnat-style.texi, gnat_rm.texi, gnat_ugn.texi: Remove RCS tags.
|
Replace ifinfo by ifnottex, to make makeinfo --html happy again.
|
Replace ifinfo by ifnottex, to make makeinfo --html happy again.
|
Add info directory entry and category.
|
Add info directory entry and category.
|
|
|
2004-04-02 Jan Hubicka
|
2004-04-02 Jan Hubicka
|
|
|
* utils.c: Include function.h
|
* utils.c: Include function.h
|
(end_subprog_body): Clear DECL_STRUCT_FUNCTION.
|
(end_subprog_body): Clear DECL_STRUCT_FUNCTION.
|
|
|
2004-04-01 Arnaud Charlet
|
2004-04-01 Arnaud Charlet
|
|
|
PR ada/14150
|
PR ada/14150
|
* Make-lang.in: Clean up generation of documentation
|
* Make-lang.in: Clean up generation of documentation
|
|
|
* gnat-style.texi, gnat_rm.texi, ug_words: Resync with AdaCore version
|
* gnat-style.texi, gnat_rm.texi, ug_words: Resync with AdaCore version
|
|
|
* xgnatug.adb: Removed, replaced by xgnatugn.adb
|
* xgnatug.adb: Removed, replaced by xgnatugn.adb
|
|
|
* xgnatugn.adb: Replaces xgnatug.adb
|
* xgnatugn.adb: Replaces xgnatug.adb
|
|
|
* gnat_ug.texi: Removed, replaced by gnat_ugn.texi
|
* gnat_ug.texi: Removed, replaced by gnat_ugn.texi
|
|
|
* gnat_ugn.texi: Replaces gnat_ug.texi. Resync with AdaCore version
|
* 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_unx.texi, gnat_ug_vms.texi, gnat_ug_vxw.texi,
|
gnat_ug_wnt.texi: Removed.
|
gnat_ug_wnt.texi: Removed.
|
|
|
2004-04-01 Arnaud Charlet
|
2004-04-01 Arnaud Charlet
|
|
|
* utils2.c: Update copyright notice.
|
* utils2.c: Update copyright notice.
|
|
|
2004-04-01 Robert Dewar
|
2004-04-01 Robert Dewar
|
|
|
* checks.adb: Minor reformatting throughout
|
* checks.adb: Minor reformatting throughout
|
Note that prev checkin added RM reference to alignment warning
|
Note that prev checkin added RM reference to alignment warning
|
|
|
2004-04-01 Ed Schonberg
|
2004-04-01 Ed Schonberg
|
|
|
* exp_aggr.adb (Get_Component_Val): Treat a string literal as
|
* exp_aggr.adb (Get_Component_Val): Treat a string literal as
|
non-static when building aggregate for bit-packed array.
|
non-static when building aggregate for bit-packed array.
|
|
|
* exp_ch4.adb (Expand_N_Slice): If a packed slice is an actual of a
|
* 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
|
function call that is itself the actual in a procedure call, build
|
temporary for it.
|
temporary for it.
|
|
|
* exp_pakd.adb (Expand_Bit_Packed_Element_Set): If right-hand side is
|
* exp_pakd.adb (Expand_Bit_Packed_Element_Set): If right-hand side is
|
a string literal, create a temporary for it, constant folding only
|
a string literal, create a temporary for it, constant folding only
|
handles scalars here.
|
handles scalars here.
|
|
|
2004-04-01 Vincent Celier
|
2004-04-01 Vincent Celier
|
|
|
* ali-util.adb (Post_Scan, Error_Msg, Error_Msg_S, Error_Msg_SC,
|
* ali-util.adb (Post_Scan, Error_Msg, Error_Msg_S, Error_Msg_SC,
|
Error_Msg_SP): New empty procedures to instantiate the Scanner.
|
Error_Msg_SP): New empty procedures to instantiate the Scanner.
|
(Style, Scanner): Instantiations of Styleg and Scng to be able to scan
|
(Style, Scanner): Instantiations of Styleg and Scng to be able to scan
|
tokens.
|
tokens.
|
(Accumulate_Checksum, Initialize_Checksum): Remove procedures.
|
(Accumulate_Checksum, Initialize_Checksum): Remove procedures.
|
(Get_File_Checksum): Use the instantiated scanner to scan all the tokens
|
(Get_File_Checksum): Use the instantiated scanner to scan all the tokens
|
and get the checksum.
|
and get the checksum.
|
|
|
* make.adb (Gnatmake): Do not insert into Q the Main_Source if it is
|
* make.adb (Gnatmake): Do not insert into Q the Main_Source if it is
|
already in the Q.
|
already in the Q.
|
Increase the Marking_Label at the end of the Multiple_Main_Loop,
|
Increase the Marking_Label at the end of the Multiple_Main_Loop,
|
instead of at the beginning.
|
instead of at the beginning.
|
|
|
* osint.adb (Lib_File_Name): Use Multi_Unit_Index_Character, not '~'
|
* osint.adb (Lib_File_Name): Use Multi_Unit_Index_Character, not '~'
|
directly.
|
directly.
|
(Osint package elaboration): Change Multi_Unit_Index_Character to '$' if
|
(Osint package elaboration): Change Multi_Unit_Index_Character to '$' if
|
on VMS.
|
on VMS.
|
|
|
* osint.ads (Multi_Unit_Index_Character): New Character global variable
|
* osint.ads (Multi_Unit_Index_Character): New Character global variable
|
|
|
* osint-c.adb (Set_Library_Info_Name): Use Multi_Unit_Index_Character,
|
* osint-c.adb (Set_Library_Info_Name): Use Multi_Unit_Index_Character,
|
not '~' directly.
|
not '~' directly.
|
|
|
* par.adb: Remove test on file name to detect language defined units.
|
* par.adb: Remove test on file name to detect language defined units.
|
Add test on unit name, after parsing, 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)
|
that are not compiled with -gnatg (except System.RPC and its children)
|
|
|
* par-ch10.adb (P_Compilation_Unit): In multi-unit sources, scan the
|
* par-ch10.adb (P_Compilation_Unit): In multi-unit sources, scan the
|
following units without style checking.
|
following units without style checking.
|
|
|
* switch-c.adb: Change -gnatC to -gnateI
|
* switch-c.adb: Change -gnatC to -gnateI
|
|
|
* usage.adb: Document new switch -gnateInnn
|
* usage.adb: Document new switch -gnateInnn
|
|
|
* scng.adb (Accumulate_Token_Checksum): New procedure
|
* scng.adb (Accumulate_Token_Checksum): New procedure
|
(Scan): Call Accumulate_Token_Checksum after each identifier, reserved
|
(Scan): Call Accumulate_Token_Checksum after each identifier, reserved
|
word or literal number.
|
word or literal number.
|
(Scan.Nlit.Scan_Integer): Do not accumulate internal '_' in litteral
|
(Scan.Nlit.Scan_Integer): Do not accumulate internal '_' in litteral
|
numbers.
|
numbers.
|
|
|
2004-04-01 Thomas Quinot
|
2004-04-01 Thomas Quinot
|
|
|
* a-tasatt.adb,
|
* a-tasatt.adb,
|
g-comlin.adb, sinput-c.adb, s-secsta.adb, s-tpobop.adb,
|
g-comlin.adb, sinput-c.adb, s-secsta.adb, s-tpobop.adb,
|
switch-m.adb, 56taprop.adb, 5ginterr.adb, 5gmastop.adb,
|
switch-m.adb, 56taprop.adb, 5ginterr.adb, 5gmastop.adb,
|
5staprop.adb, 5vinterr.adb, 5vtaprop.adb, 5vtpopde.adb,
|
5staprop.adb, 5vinterr.adb, 5vtaprop.adb, 5vtpopde.adb,
|
5vtpopde.adb: Add missing 'constant' keywords.
|
5vtpopde.adb: Add missing 'constant' keywords.
|
|
|
2004-04-01 Javier Miranda
|
2004-04-01 Javier Miranda
|
|
|
* par-ch4.adb: (P_Allocator): Code cleanup
|
* par-ch4.adb: (P_Allocator): Code cleanup
|
|
|
* sem_ch3.adb (Access_Definition): Properly set the null-excluding
|
* sem_ch3.adb (Access_Definition): Properly set the null-excluding
|
attribute.
|
attribute.
|
|
|
* sinfo.ads: Complete documentation of previous change
|
* sinfo.ads: Complete documentation of previous change
|
|
|
2004-04-01 Pascal Obry
|
2004-04-01 Pascal Obry
|
|
|
* gnatlink.adb (Process_Binder_File): Remove duplicate linker options
|
* gnatlink.adb (Process_Binder_File): Remove duplicate linker options
|
only on VMS. This special handling was done because an old GNU/ld bug
|
only on VMS. This special handling was done because an old GNU/ld bug
|
on Windows which has been fixed.
|
on Windows which has been fixed.
|
|
|
2004-04-01 GNAT Script
|
2004-04-01 GNAT Script
|
|
|
* Make-lang.in: Makefile automatically updated
|
* Make-lang.in: Makefile automatically updated
|
|
|
2004-03-31 Richard Kenner
|
2004-03-31 Richard Kenner
|
|
|
* decl.c (gnat_to_gnu_entity, make_type_from_size):
|
* decl.c (gnat_to_gnu_entity, make_type_from_size):
|
Use TYPE_UNSIGNED, not TREE_UNSIGNED.
|
Use TYPE_UNSIGNED, not TREE_UNSIGNED.
|
* trans.c (tree_transform, convert_with_check): Likewise.
|
* trans.c (tree_transform, convert_with_check): Likewise.
|
* utils.c (gnat_signed_or_unsigned_type): Likewise.
|
* utils.c (gnat_signed_or_unsigned_type): Likewise.
|
(build_vms_descriptor, unchecked_convert): Likewise.
|
(build_vms_descriptor, unchecked_convert): Likewise.
|
* utils2.c (nonbinary_modular_operation): Likewise.
|
* utils2.c (nonbinary_modular_operation): Likewise.
|
|
|
2004-03-29 Javier Miranda
|
2004-03-29 Javier Miranda
|
|
|
* checks.adb (Null_Exclusion_Static_Checks): New subprogram
|
* checks.adb (Null_Exclusion_Static_Checks): New subprogram
|
(Install_Null_Excluding_Check): Local subprogram that determines whether
|
(Install_Null_Excluding_Check): Local subprogram that determines whether
|
an access node requires a runtime access check and if so inserts the
|
an access node requires a runtime access check and if so inserts the
|
appropriate run-time check.
|
appropriate run-time check.
|
(Apply_Access_Check): Call Install_Null_Excluding check if required
|
(Apply_Access_Check): Call Install_Null_Excluding check if required
|
(Apply_Constraint_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
|
* checks.ads: (Null_Exclusion_Static_Checks): New subprogram
|
|
|
* einfo.ads: Fix typo in comment
|
* einfo.ads: Fix typo in comment
|
|
|
* exp_ch3.adb (Build_Assignment): Generate conversion to the
|
* exp_ch3.adb (Build_Assignment): Generate conversion to the
|
null-excluding type to force the corresponding run-time check.
|
null-excluding type to force the corresponding run-time check.
|
(Expand_N_Object_Declaration): Generate conversion to the null-excluding
|
(Expand_N_Object_Declaration): Generate conversion to the null-excluding
|
type to force the corresponding run-time check.
|
type to force the corresponding run-time check.
|
|
|
* exp_ch5.adb (Expand_N_Assignment_Statement): Generate conversion to
|
* exp_ch5.adb (Expand_N_Assignment_Statement): Generate conversion to
|
the null-excluding type to force the corresponding run-time check.
|
the null-excluding type to force the corresponding run-time check.
|
|
|
* exp_ch6.adb (Expand_Call): Do not generate the run-time check in
|
* exp_ch6.adb (Expand_Call): Do not generate the run-time check in
|
case of access types unless they have the null-excluding attribute.
|
case of access types unless they have the null-excluding attribute.
|
|
|
* sprint.adb (Sprint_Node_Actual): Give support to the null-exclusing
|
* sprint.adb (Sprint_Node_Actual): Give support to the null-exclusing
|
part.
|
part.
|
|
|
* exp_util.ads: Fix typo in comment
|
* exp_util.ads: Fix typo in comment
|
|
|
* par.adb (P_Null_Exclusion): New subprogram
|
* par.adb (P_Null_Exclusion): New subprogram
|
(P_Subtype_Indication): New formal that indicates if the null-excluding
|
(P_Subtype_Indication): New formal that indicates if the null-excluding
|
part has been scanned-out and it was present
|
part has been scanned-out and it was present
|
|
|
* par-ch3.adb, par-ch4.adb, par-ch6.adb: Give support to AI-231
|
* par-ch3.adb, par-ch4.adb, par-ch6.adb: Give support to AI-231
|
|
|
* sem_aggr.adb: (Check_Can_Never_Be_Null): New subprogram
|
* sem_aggr.adb: (Check_Can_Never_Be_Null): New subprogram
|
(Aggregate_Constraint_Checks): Generate conversion to the null-excluding
|
(Aggregate_Constraint_Checks): Generate conversion to the null-excluding
|
type to force the corresponding run-time check
|
type to force the corresponding run-time check
|
(Resolve_Aggregate): Propagate the null-excluding attribute to the array
|
(Resolve_Aggregate): Propagate the null-excluding attribute to the array
|
components
|
components
|
(Resolve_Array_Aggregate): Carry out some static checks
|
(Resolve_Array_Aggregate): Carry out some static checks
|
(Resolve_Record_Aggregate.Get_Value): Carry out some static check
|
(Resolve_Record_Aggregate.Get_Value): Carry out some static check
|
|
|
* sem_ch3.adb (Access_Definition): In Ada 0Y the Can_Never_Be_Null
|
* 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
|
attribute must be set only if specified by means of the null-excluding
|
part. In addition, we must also propagate the access-constant attribute
|
part. In addition, we must also propagate the access-constant attribute
|
if present.
|
if present.
|
(Access_Subprogram_Declaration, Access_Type_Declaration,
|
(Access_Subprogram_Declaration, Access_Type_Declaration,
|
Analyze_Component_Declaration, Analyze_Object_Declaration,
|
Analyze_Component_Declaration, Analyze_Object_Declaration,
|
Array_Type_Declaration, Process_Discriminants,
|
Array_Type_Declaration, Process_Discriminants,
|
Analyze_Subtype_Declaration): Propagate the null-excluding attribute
|
Analyze_Subtype_Declaration): Propagate the null-excluding attribute
|
and carry out some static checks.
|
and carry out some static checks.
|
(Build_Derived_Access_Type): Set the null-excluding attribute
|
(Build_Derived_Access_Type): Set the null-excluding attribute
|
(Derived_Type_Declaration, Process_Subtype): Carry out some static
|
(Derived_Type_Declaration, Process_Subtype): Carry out some static
|
checks.
|
checks.
|
|
|
* sem_ch4.adb (Analyze_Allocator): 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_ch5.adb (Analyze_Assignment): Carry out some static checks
|
|
|
* sem_ch6.adb (Process_Formals): Carry out some static checks.
|
* sem_ch6.adb (Process_Formals): Carry out some static checks.
|
(Set_Actual_Subtypes): Generate null-excluding subtype if the
|
(Set_Actual_Subtypes): Generate null-excluding subtype if the
|
null-excluding part was present; it is not required to be done here in
|
null-excluding part was present; it is not required to be done here in
|
case of anonymous access types.
|
case of anonymous access types.
|
(Set_Formal_Mode): Ada 0Y allows anonymous access to have the null
|
(Set_Formal_Mode): Ada 0Y allows anonymous access to have the null
|
value.
|
value.
|
|
|
* sem_res.adb (Resolve_Actuals): Carry out some static check
|
* sem_res.adb (Resolve_Actuals): Carry out some static check
|
(Resolve_Null): Allow null in anonymous access
|
(Resolve_Null): Allow null in anonymous access
|
|
|
* sinfo.adb: New subprogram Null_Exclusion_Present
|
* sinfo.adb: New subprogram Null_Exclusion_Present
|
All_Present and Constant_Present available on access_definition nodes
|
All_Present and Constant_Present available on access_definition nodes
|
|
|
* sinfo.ads: New flag Null_Exclusion_Present on subtype_declaration,
|
* sinfo.ads: New flag Null_Exclusion_Present on subtype_declaration,
|
object_declaration, derived_type_definition, component_definition,
|
object_declaration, derived_type_definition, component_definition,
|
discriminant_specification, access_to_object_definition,
|
discriminant_specification, access_to_object_definition,
|
access_function_definition, allocator, access_procedure_definition,
|
access_function_definition, allocator, access_procedure_definition,
|
access_definition, parameter_specification, All_Present and
|
access_definition, parameter_specification, All_Present and
|
Constant_Present flags available on access_definition nodes.
|
Constant_Present flags available on access_definition nodes.
|
|
|
2004-03-29 Robert Dewar
|
2004-03-29 Robert Dewar
|
|
|
* fname.adb, fname.ads, fname-sf.adb, fname-uf.adb, fname-uf.ads,
|
* 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,
|
gnat1drv.adb, lib.adb, lib.ads, lib-load.adb, lib-writ.adb,
|
opt.ads, osint.adb, osint.ads, osint-c.adb, par.adb,
|
opt.ads, osint.adb, osint.ads, osint-c.adb, par.adb,
|
par-ch10.adb, par-load.adb, par-prag.adb, sfn_scan.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,
|
sfn_scan.ads, sinput-l.adb, sinput-l.ads, switch-c.adb,
|
sem_prag.adb: Updates to handle multiple units/file
|
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: Change test for s-rpc to s-rp for detecting rpc and children
|
|
|
* par.adb, memtrack.adb, prj-makr.adb, prj-part.adb,
|
* par.adb, memtrack.adb, prj-makr.adb, prj-part.adb,
|
sem_util.adb: Minor reformatting
|
sem_util.adb: Minor reformatting
|
|
|
* sem_ch12.adb: Add comment for previous change
|
* sem_ch12.adb: Add comment for previous change
|
|
|
2004-03-29 Laurent Pautet
|
2004-03-29 Laurent Pautet
|
|
|
* osint.adb (Executable_Prefix): Set Exec_Name to the current
|
* osint.adb (Executable_Prefix): Set Exec_Name to the current
|
executable name when not initialized. Otherwise, use its current value.
|
executable name when not initialized. Otherwise, use its current value.
|
|
|
* osint.ads (Exec_Name): Move Exec_Name from body to spec in order to
|
* 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
|
initialize it to another executable name than the current one. This
|
allows to configure paths for an executable name (gnatmake) different
|
allows to configure paths for an executable name (gnatmake) different
|
from the current one (gnatdist).
|
from the current one (gnatdist).
|
|
|
2004-03-29 Ed Schonberg
|
2004-03-29 Ed Schonberg
|
|
|
* exp_ch6.adb (Expand_Call): A call to a function declared in the
|
* 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
|
current unit cannot be inlined if it appears in the body of a withed
|
unit, to avoid order of elaboration problems in gigi.
|
unit, to avoid order of elaboration problems in gigi.
|
|
|
* exp_ch9.adb (Build_Protected_Sub_Specification): Generate debugging
|
* exp_ch9.adb (Build_Protected_Sub_Specification): Generate debugging
|
information for protected (wrapper) operation as well, to simplify gdb
|
information for protected (wrapper) operation as well, to simplify gdb
|
use.
|
use.
|
|
|
* sem_ch6.adb (Analyze_Subprogram_Body): For a private operation in a
|
* sem_ch6.adb (Analyze_Subprogram_Body): For a private operation in a
|
protected body, indicate that the entity for the generated spec comes
|
protected body, indicate that the entity for the generated spec comes
|
from source, to ensure that references are properly generated for it.
|
from source, to ensure that references are properly generated for it.
|
(Build_Body_To_Inline): Do not inline a function that returns a
|
(Build_Body_To_Inline): Do not inline a function that returns a
|
controlled type.
|
controlled type.
|
|
|
* sem_prag.adb (Process_Convention): If subprogram is overloaded, only
|
* sem_prag.adb (Process_Convention): If subprogram is overloaded, only
|
apply convention to homonyms that are declared explicitly.
|
apply convention to homonyms that are declared explicitly.
|
|
|
* sem_res.adb (Make_Call_Into_Operator): If the operation is a function
|
* sem_res.adb (Make_Call_Into_Operator): If the operation is a function
|
that renames an equality operator and the operands are overloaded,
|
that renames an equality operator and the operands are overloaded,
|
resolve them with the declared formal types, before rewriting as an
|
resolve them with the declared formal types, before rewriting as an
|
operator.
|
operator.
|
|
|
2004-03-29 GNAT Script
|
2004-03-29 GNAT Script
|
|
|
* Make-lang.in: Makefile automatically updated
|
* Make-lang.in: Makefile automatically updated
|
|
|
2004-03-25 Vasiliy Fofanov
|
2004-03-25 Vasiliy Fofanov
|
|
|
* memtrack.adb: Log realloc calls, which are treated as free followed
|
* memtrack.adb: Log realloc calls, which are treated as free followed
|
by alloc.
|
by alloc.
|
|
|
2004-03-25 Vincent Celier
|
2004-03-25 Vincent Celier
|
|
|
* prj-makr.adb (Process_Directories): Detect when a file contains
|
* prj-makr.adb (Process_Directories): Detect when a file contains
|
several units. Do not include such files in the config pragmas or
|
several units. Do not include such files in the config pragmas or
|
in the naming scheme.
|
in the naming scheme.
|
|
|
* prj-nmsc.adb (Record_Source): New parameter Trusted_Mode.
|
* prj-nmsc.adb (Record_Source): New parameter Trusted_Mode.
|
Resolve links only when not in Trusted_Mode.
|
Resolve links only when not in Trusted_Mode.
|
(Find_Sources, Recursive_Find_Dirs, Find_Source_Dirs, Locate_Directory):
|
(Find_Sources, Recursive_Find_Dirs, Find_Source_Dirs, Locate_Directory):
|
Do not resolve links for the display names.
|
Do not resolve links for the display names.
|
|
|
* prj-part.adb (Parse_Single_Project, Project_Path_Name_Of): Do not
|
* prj-part.adb (Parse_Single_Project, Project_Path_Name_Of): Do not
|
resolve links when computing the display names.
|
resolve links when computing the display names.
|
|
|
2004-03-25 Thomas Quinot
|
2004-03-25 Thomas Quinot
|
|
|
* sem_attr.adb (Check_Dereference): When the prefix of a 'Tag
|
* sem_attr.adb (Check_Dereference): When the prefix of a 'Tag
|
attribute reference does not denote a subtype, it can be any
|
attribute reference does not denote a subtype, it can be any
|
expression that has a classwide type, potentially after an implicit
|
expression that has a classwide type, potentially after an implicit
|
dereference. In particular, the prefix can be a view conversion for
|
dereference. In particular, the prefix can be a view conversion for
|
a classwide type (for which Is_Object_Reference holds), but it can
|
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
|
also be a value conversion for an access-to-classwide type. In the
|
latter case, there is an implicit dereference, and the original node
|
latter case, there is an implicit dereference, and the original node
|
for the prefix does not verify Is_Object_Reference.
|
for the prefix does not verify Is_Object_Reference.
|
|
|
* sem_util.adb (Is_Dependent_Component_Of_Mutable_Object): A view
|
* sem_util.adb (Is_Dependent_Component_Of_Mutable_Object): A view
|
conversion of a discriminant-dependent component of a mutable object
|
conversion of a discriminant-dependent component of a mutable object
|
is one itself.
|
is one itself.
|
|
|
2004-03-25 Ed Schonberg
|
2004-03-25 Ed Schonberg
|
|
|
* freeze.adb (Freeze_Entity): When an inherited subprogram is
|
* freeze.adb (Freeze_Entity): When an inherited subprogram is
|
inherited, has convention C, and has unconstrained array parameters,
|
inherited, has convention C, and has unconstrained array parameters,
|
place the corresponding warning on the derived type declaration rather
|
place the corresponding warning on the derived type declaration rather
|
than the original subprogram.
|
than the original subprogram.
|
|
|
* sem_ch12.adb (Instantiate_Formal_Subprogram): Set From_Default
|
* sem_ch12.adb (Instantiate_Formal_Subprogram): Set From_Default
|
indication on renaming declaration, if formal has a box and actual
|
indication on renaming declaration, if formal has a box and actual
|
is absent.
|
is absent.
|
|
|
* sem_ch8.adb (Analyze_Subprogram_Renaming): Use From_Default flag to
|
* sem_ch8.adb (Analyze_Subprogram_Renaming): Use From_Default flag to
|
determine whether to generate an implicit or explicit reference to
|
determine whether to generate an implicit or explicit reference to
|
the renamed entity.
|
the renamed entity.
|
|
|
* sinfo.ads, sinfo.adb: New flag From_Default, to indicate that a
|
* sinfo.ads, sinfo.adb: New flag From_Default, to indicate that a
|
subprogram renaming comes from a defaulted formal subprogram in an
|
subprogram renaming comes from a defaulted formal subprogram in an
|
instance.
|
instance.
|
|
|
2004-03-25 Gary Dismukes
|
2004-03-25 Gary Dismukes
|
|
|
* sem_elab.adb (Check_Elab_Call): Refine loop that checks for default
|
* sem_elab.adb (Check_Elab_Call): Refine loop that checks for default
|
value expressions to ensure that calls within a component definition
|
value expressions to ensure that calls within a component definition
|
will be checked (since those are evaluated during the record type's
|
will be checked (since those are evaluated during the record type's
|
elaboration).
|
elaboration).
|
|
|
2004-03-25 Arnaud Charlet
|
2004-03-25 Arnaud Charlet
|
|
|
* s-tpobop.adb: Code clean up:
|
* s-tpobop.adb: Code clean up:
|
(Requeue_Call): Extract from PO_Service_Entries to remove duplicated
|
(Requeue_Call): Extract from PO_Service_Entries to remove duplicated
|
code.
|
code.
|
(PO_Do_Or_Queue): Remove duplicated code and use Requeue_Call.
|
(PO_Do_Or_Queue): Remove duplicated code and use Requeue_Call.
|
|
|
2004-03-25 Jose Ruiz
|
2004-03-25 Jose Ruiz
|
|
|
* Makefile.in: Clean up in the ravenscar run time.
|
* Makefile.in: Clean up in the ravenscar run time.
|
|
|
2004-03-23 Richard Kenner
|
2004-03-23 Richard Kenner
|
|
|
* decl.c (gnat_to_gnu_entity, case E_Access_Type): Pass value
|
* decl.c (gnat_to_gnu_entity, case E_Access_Type): Pass value
|
of No_Strict_Aliasing to build_pointer_type_for_mode.
|
of No_Strict_Aliasing to build_pointer_type_for_mode.
|
* utils.c (update_pointer_to): Walk pointer and ref chains.
|
* utils.c (update_pointer_to): Walk pointer and ref chains.
|
|
|
2004-03-22 Cyrille Comar
|
2004-03-22 Cyrille Comar
|
|
|
* ali.ads: Fix Comment about Dynamic_Elab.
|
* ali.ads: Fix Comment about Dynamic_Elab.
|
|
|
* gnatls.adb (Output_Unit): Add output of many flags (Dynamic_Elab,
|
* gnatls.adb (Output_Unit): Add output of many flags (Dynamic_Elab,
|
Has_RACW, Is_Generic, etc.)
|
Has_RACW, Is_Generic, etc.)
|
(Output_Object, Gnatls): Take into account ALI files not attached to
|
(Output_Object, Gnatls): Take into account ALI files not attached to
|
an object.
|
an object.
|
|
|
2004-03-22 Vincent Celier
|
2004-03-22 Vincent Celier
|
|
|
* gprep.adb: Change all String_Access to Name_Id
|
* gprep.adb: Change all String_Access to Name_Id
|
(Is_ASCII_Letter): new function
|
(Is_ASCII_Letter): new function
|
(Double_File_Name_Buffer): New procedure
|
(Double_File_Name_Buffer): New procedure
|
(Preprocess_Infile_Name): New procedure
|
(Preprocess_Infile_Name): New procedure
|
(Process_Files): New procedure
|
(Process_Files): New procedure
|
(Gnatprep): Check if output and input are existing directories.
|
(Gnatprep): Check if output and input are existing directories.
|
Call Process_Files to do the real job.
|
Call Process_Files to do the real job.
|
|
|
2004-03-22 Robert Dewar
|
2004-03-22 Robert Dewar
|
|
|
* prj-env.adb, prj-nmsc.ads, prj-proc.ads,
|
* prj-env.adb, prj-nmsc.ads, prj-proc.ads,
|
s-stache.ads, s-stache.adb: Comment updates. Minor reformatting.
|
s-stache.ads, s-stache.adb: Comment updates. Minor reformatting.
|
|
|
2004-03-22 Sergey Rybin
|
2004-03-22 Sergey Rybin
|
|
|
* scn.adb (Contains): Add check for EOF, is needed for a degenerated
|
* scn.adb (Contains): Add check for EOF, is needed for a degenerated
|
case when the source contains only comments.
|
case when the source contains only comments.
|
|
|
2004-03-22 Ed Schonberg
|
2004-03-22 Ed Schonberg
|
|
|
* sem_ch10.adb (Analyze_Compilation_Unit): When generating a
|
* sem_ch10.adb (Analyze_Compilation_Unit): When generating a
|
declaration for a child subprogram body that acts as a spec, indicate
|
declaration for a child subprogram body that acts as a spec, indicate
|
that the entity in the declaration needs debugging information.
|
that the entity in the declaration needs debugging information.
|
|
|
* sem_ch3.adb (Complete_Private_Subtype): Do not build an underlying
|
* sem_ch3.adb (Complete_Private_Subtype): Do not build an underlying
|
full view if the subtype is created for a constrained record component;
|
full view if the subtype is created for a constrained record component;
|
gigi has enough information to construct the record, and there is no
|
gigi has enough information to construct the record, and there is no
|
place in the tree for the declaration.
|
place in the tree for the declaration.
|
|
|
* sem_ch6.adb (Build_Body_To_Inline): Use an internal name without
|
* 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
|
serial number for the dummy body that is built for analysis, to avoid
|
inconsistencies in the generation of internal names when compiling
|
inconsistencies in the generation of internal names when compiling
|
with -gnatN.
|
with -gnatN.
|
|
|
2004-03-22 Thomas Quinot
|
2004-03-22 Thomas Quinot
|
|
|
* sem_util.adb (Is_Object_Reference): A view conversion denotes an
|
* sem_util.adb (Is_Object_Reference): A view conversion denotes an
|
object.
|
object.
|
|
|
2004-03-22 GNAT Script
|
2004-03-22 GNAT Script
|
|
|
* Make-lang.in: Makefile automatically updated
|
* Make-lang.in: Makefile automatically updated
|
|
|
2004-03-21 Richard Kenner
|
2004-03-21 Richard Kenner
|
|
|
* decl.c (gnat_to_gnu_entity): Use SUBSTITUTE_PLACEHOLDER_IN_EXPR.
|
* decl.c (gnat_to_gnu_entity): Use SUBSTITUTE_PLACEHOLDER_IN_EXPR.
|
* trans.c (tree_transform, emit_index_check): Likewise.
|
* trans.c (tree_transform, emit_index_check): Likewise.
|
* utils.c (build_template): Likewise.
|
* utils.c (build_template): Likewise.
|
(max_size, convert): Remove handling of WITH_RECORD_EXPR.
|
(max_size, convert): Remove handling of WITH_RECORD_EXPR.
|
(maybe_unconstrained_array, unchecked_convert): Likewise.
|
(maybe_unconstrained_array, unchecked_convert): Likewise.
|
* utils2.c (gnat_truthvalue_conversion, build_binary_op): Likewise.
|
* utils2.c (gnat_truthvalue_conversion, build_binary_op): Likewise.
|
(build_unary_op): Likewise.
|
(build_unary_op): Likewise.
|
(compare_arrays, build_allocator): Use SUBSTITUTE_PLACEHOLDER_IN_EXPR.
|
(compare_arrays, build_allocator): Use SUBSTITUTE_PLACEHOLDER_IN_EXPR.
|
(fill_vms_descriptor): Likewise.
|
(fill_vms_descriptor): Likewise.
|
(build_call_alloc_dealloc): Likewise.
|
(build_call_alloc_dealloc): Likewise.
|
ALIGN is unsigned.
|
ALIGN is unsigned.
|
* gigi.h (build_call_alloc_dealloc): Alignment is unsigned.
|
* gigi.h (build_call_alloc_dealloc): Alignment is unsigned.
|
|
|
2004-03-20 Joseph S. Myers
|
2004-03-20 Joseph S. Myers
|
|
|
PR other/14630
|
PR other/14630
|
* gnat_ug.texi: Add info directory category and entry.
|
* gnat_ug.texi: Add info directory category and entry.
|
* gnat_ug_unx.texi, gnat_ug_vms.texi, gnat_ug_vxw.texi,
|
* gnat_ug_unx.texi, gnat_ug_vms.texi, gnat_ug_vxw.texi,
|
gnat_ug_wnt.texi: Regenerate.
|
gnat_ug_wnt.texi: Regenerate.
|
|
|
2004-03-19 Arnaud Charlet
|
2004-03-19 Arnaud Charlet
|
|
|
* ada-tree.h: Update copyright notice.
|
* ada-tree.h: Update copyright notice.
|
Minor reformatting.
|
Minor reformatting.
|
|
|
2004-03-19 Olivier Hainque
|
2004-03-19 Olivier Hainque
|
|
|
* decl.c (gnat_to_gnu_entity, case E_Exception): Handle VMS exceptions
|
* decl.c (gnat_to_gnu_entity, case E_Exception): Handle VMS exceptions
|
as regular exception objects and not as mere integers representing the
|
as regular exception objects and not as mere integers representing the
|
condition code. The latter approach required some dynamics to mask off
|
condition code. The latter approach required some dynamics to mask off
|
severity bits, which did not fit well into the GCC table based model.
|
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
|
(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
|
exception data objects. We don't it and it would conflict with the other
|
external symbol we have to generate for such exceptions.
|
external symbol we have to generate for such exceptions.
|
|
|
* trans.c (tree_transform, case N_Exception_Handler): Remove part of
|
* trans.c (tree_transform, case N_Exception_Handler): Remove part of
|
the special code for VMS exceptions, since these are now represented
|
the special code for VMS exceptions, since these are now represented
|
as regular exceptions objects.
|
as regular exceptions objects.
|
|
|
2004-03-19 Richard Kenner
|
2004-03-19 Richard Kenner
|
|
|
* decl.c (debug_no_type_hash): Remove.
|
* decl.c (debug_no_type_hash): Remove.
|
(gnat_to_gnu_entity, case E_Array_Type): Don't set and clear it.
|
(gnat_to_gnu_entity, case E_Array_Type): Don't set and clear it.
|
* misc.c (LANG_HOOK_HASH_TYPE): Redefine.
|
* misc.c (LANG_HOOK_HASH_TYPE): Redefine.
|
|
|
2004-03-19 Laurent Guerby
|
2004-03-19 Laurent Guerby
|
|
|
* sem_prag.adb (Suppress_Unsuppress_Echeck): use loop instead of
|
* sem_prag.adb (Suppress_Unsuppress_Echeck): use loop instead of
|
aggregate, allows bootstrap from 3.3 on powerpc-darwin.
|
aggregate, allows bootstrap from 3.3 on powerpc-darwin.
|
|
|
2004-03-18 Richard Kenner
|
2004-03-18 Richard Kenner
|
|
|
* ada-tree.h (TYPE_LEFT_JUSTIFIED_MODULAR_P): Add checking.
|
* ada-tree.h (TYPE_LEFT_JUSTIFIED_MODULAR_P): Add checking.
|
(TYPE_CONTAINS_TEMPLATE_P, TYPE_OBJECT_RECORD_TYPE): Likewise.
|
(TYPE_CONTAINS_TEMPLATE_P, TYPE_OBJECT_RECORD_TYPE): Likewise.
|
(TYPE_RM_SIZE_INT): Directly use type.values.
|
(TYPE_RM_SIZE_INT): Directly use type.values.
|
(TREE_LOOP_ID): Clean up check.
|
(TREE_LOOP_ID): Clean up check.
|
* decl.c (gnat_to_gnu_entity, case E_Enumeration_Type): Use
|
* decl.c (gnat_to_gnu_entity, case E_Enumeration_Type): Use
|
TYPE_VALUES, not TYPE_FIELDS.
|
TYPE_VALUES, not TYPE_FIELDS.
|
* trans.c (convert_with_check): Delay access of bounds of basetype
|
* trans.c (convert_with_check): Delay access of bounds of basetype
|
until sure is numeric.
|
until sure is numeric.
|
|
|
2004-03-18 Arnaud Charlet
|
2004-03-18 Arnaud Charlet
|
|
|
* 5atpopsp.adb: Remove RTEMS from list of platforms using this file.
|
* 5atpopsp.adb: Remove RTEMS from list of platforms using this file.
|
|
|
Code clean up:
|
Code clean up:
|
* 5ataprop.adb, 5ftaprop.adb, 5htaprop.adb, 5itaprop.adb, 5staprop.adb,
|
* 5ataprop.adb, 5ftaprop.adb, 5htaprop.adb, 5itaprop.adb, 5staprop.adb,
|
5vtaprop.adb, 5wtaprop.adb, 7staprop.adb (Finalize_TCB): Use
|
5vtaprop.adb, 5wtaprop.adb, 7staprop.adb (Finalize_TCB): Use
|
Specific.Set instead of direct call to e.g pthread_setspecific.
|
Specific.Set instead of direct call to e.g pthread_setspecific.
|
|
|
2004-03-18 Thomas Quinot
|
2004-03-18 Thomas Quinot
|
|
|
* adaint.c: Update comments.
|
* adaint.c: Update comments.
|
|
|
* Makefile.in: set PREFIX_OBJS, SYMLIB, THREADSLIB, and
|
* Makefile.in: set PREFIX_OBJS, SYMLIB, THREADSLIB, and
|
GNATLIB_SHARED for FreeBSD.
|
GNATLIB_SHARED for FreeBSD.
|
|
|
2004-03-18 Jose Ruiz
|
2004-03-18 Jose Ruiz
|
|
|
* init.c [VxWorks]: Do not fix the stack size for the environment task.
|
* init.c [VxWorks]: Do not fix the stack size for the environment task.
|
When needed (stack checking) the stack size is retrieved
|
When needed (stack checking) the stack size is retrieved
|
from the VxWorks kernel.
|
from the VxWorks kernel.
|
|
|
* Makefile.in: Flag -nostdinc is required when building the run time
|
* Makefile.in: Flag -nostdinc is required when building the run time
|
for avoiding looking for files in the base compiler.
|
for avoiding looking for files in the base compiler.
|
Add the VxWorks specific version of the package body for
|
Add the VxWorks specific version of the package body for
|
System.Stack_checking.Operations (5zstchop.adb).
|
System.Stack_checking.Operations (5zstchop.adb).
|
|
|
* Make-lang.in: Add the object file for
|
* Make-lang.in: Add the object file for
|
System.Stack_Checking.Operations.
|
System.Stack_Checking.Operations.
|
|
|
* Makefile.rtl: Add object file for the package
|
* Makefile.rtl: Add object file for the package
|
System.Stack_Checking.Operations.
|
System.Stack_Checking.Operations.
|
|
|
* s-stchop.ads, s-stchop.adb, 5zstchop.adb: New files.
|
* s-stchop.ads, s-stchop.adb, 5zstchop.adb: New files.
|
|
|
* s-stache.ads, s-stache.adb: Move the operations related to stack
|
* s-stache.ads, s-stache.adb: Move the operations related to stack
|
checking from this package to package System.Stack_Checking.Operations.
|
checking from this package to package System.Stack_Checking.Operations.
|
This way, stack checking operations are only linked in the final
|
This way, stack checking operations are only linked in the final
|
executable when using the -fstack-check flag.
|
executable when using the -fstack-check flag.
|
|
|
2004-03-18 Doug Rupp
|
2004-03-18 Doug Rupp
|
|
|
* Makefile.in [VMS]: Handle 64 bit specs (5qsystem.ads, 5xcrtl.ads).
|
* Makefile.in [VMS]: Handle 64 bit specs (5qsystem.ads, 5xcrtl.ads).
|
Reorganize ifeq's.
|
Reorganize ifeq's.
|
|
|
* 5qsystem.ads, 5xcrtl.ads: New files.
|
* 5qsystem.ads, 5xcrtl.ads: New files.
|
|
|
2004-03-18 Vincent Celier
|
2004-03-18 Vincent Celier
|
|
|
* prj.adb (Reset): Reset hash table Files_Htable
|
* prj.adb (Reset): Reset hash table Files_Htable
|
|
|
* prj-env.adb (Source_Paths, Object_Paths): New tables.
|
* prj-env.adb (Source_Paths, Object_Paths): New tables.
|
(Add_To_Source_Path, Add_To_Object_Path): New procedures, to replace
|
(Add_To_Source_Path, Add_To_Object_Path): New procedures, to replace
|
the procedures Add_To_Path_File.
|
the procedures Add_To_Path_File.
|
(Set_Ada_Paths): Accumulate source and object dirs in the tables,
|
(Set_Ada_Paths): Accumulate source and object dirs in the tables,
|
making sure that each directory is present only once and, for object
|
making sure that each directory is present only once and, for object
|
dirs, when a directory already present is added, the duplicate is
|
dirs, when a directory already present is added, the duplicate is
|
removed and the directory is always put as the last in the table.
|
removed and the directory is always put as the last in the table.
|
Write the path files at the end of these accumulations.
|
Write the path files at the end of these accumulations.
|
|
|
* prj-nmsc.adb (Record_Source): Add source file name in hash table
|
* prj-nmsc.adb (Record_Source): Add source file name in hash table
|
Files_Htable for all sources.
|
Files_Htable for all sources.
|
|
|
* prj-proc.adb (Process): Remove restrictions between not directly
|
* prj-proc.adb (Process): Remove restrictions between not directly
|
related extending projects.
|
related extending projects.
|
|
|
2004-03-18 Emmanuel Briot
|
2004-03-18 Emmanuel Briot
|
|
|
* prj-nmsc.ads, prj-nmsc.adb (Ada_Check): New parameter Trusted_Mode.
|
* prj-nmsc.ads, prj-nmsc.adb (Ada_Check): New parameter Trusted_Mode.
|
(Find_Sources): Minor speed optimization.
|
(Find_Sources): Minor speed optimization.
|
|
|
* prj-proc.ads, prj-proc.adb (Check, Recursive_Check, Process): New
|
* prj-proc.ads, prj-proc.adb (Check, Recursive_Check, Process): New
|
parameter Trusted_Mode.
|
parameter Trusted_Mode.
|
|
|
2004-03-18 Sergey Rybin
|
2004-03-18 Sergey Rybin
|
|
|
* scn.adb (Determine_License): Take into account a degenerated case
|
* scn.adb (Determine_License): Take into account a degenerated case
|
when the source contains only comments.
|
when the source contains only comments.
|
|
|
2004-03-18 Ed Schonberg
|
2004-03-18 Ed Schonberg
|
|
|
* sem_warn.adb (Check_References): For a warning on a selected
|
* sem_warn.adb (Check_References): For a warning on a selected
|
component that does not come from source, locate an uninitialized
|
component that does not come from source, locate an uninitialized
|
component of the record type to produce a more precise error message.
|
component of the record type to produce a more precise error message.
|
|
|
2004-03-15 Jerome Guitton
|
2004-03-15 Jerome Guitton
|
|
|
* 3zsoccon.ads: Fix multicast options.
|
* 3zsoccon.ads: Fix multicast options.
|
|
|
* s-thread.ads: Move unchecked conversion from ATSD_Access to Address
|
* s-thread.ads: Move unchecked conversion from ATSD_Access to Address
|
in the spec.
|
in the spec.
|
|
|
2004-03-15 Robert Dewar
|
2004-03-15 Robert Dewar
|
|
|
* sem_prag.adb: Make sure No_Strict_Aliasing flag is set right when
|
* sem_prag.adb: Make sure No_Strict_Aliasing flag is set right when
|
pragma used for a private type.
|
pragma used for a private type.
|
|
|
* lib-xref.adb (Generate_Reference): Do not generate warning if
|
* lib-xref.adb (Generate_Reference): Do not generate warning if
|
reference is in a different unit from the pragma Unreferenced.
|
reference is in a different unit from the pragma Unreferenced.
|
|
|
* 5vtpopde.adb: Minor reformatting
|
* 5vtpopde.adb: Minor reformatting
|
Fix casing of To_Task_ID
|
Fix casing of To_Task_ID
|
|
|
* sem_ch13.adb (Validate_Unchecked_Conversion): Set No_Strict_Aliasing
|
* sem_ch13.adb (Validate_Unchecked_Conversion): Set No_Strict_Aliasing
|
flag if we have an unchecked conversion to an access type in the same
|
flag if we have an unchecked conversion to an access type in the same
|
unit.
|
unit.
|
|
|
2004-03-15 Geert Bosch
|
2004-03-15 Geert Bosch
|
|
|
* a-ngcoty.adb (Modulus): In alternate formula for large real or
|
* a-ngcoty.adb (Modulus): In alternate formula for large real or
|
imaginary parts, use Double precision throughout.
|
imaginary parts, use Double precision throughout.
|
|
|
* a-tifiio.adb (Put_Scaled): Remove remaining pragma Debug. Not only
|
* 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
|
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.
|
this may also be instantiated in user code that is compiled with -gnata.
|
|
|
2004-03-15 Olivier Hainque
|
2004-03-15 Olivier Hainque
|
|
|
* s-stalib.ads (Exception_Code): New type, to represent Import/Export
|
* s-stalib.ads (Exception_Code): New type, to represent Import/Export
|
codes. Having a separate type for this is useful to enforce consistency
|
codes. Having a separate type for this is useful to enforce consistency
|
throughout the various run-time units.
|
throughout the various run-time units.
|
(Exception_Data): Use Exception_Code for Import_Code.
|
(Exception_Data): Use Exception_Code for Import_Code.
|
|
|
* s-vmextra.ads, s-vmexta.adb: Use Exception_Code instead of a mix of
|
* s-vmextra.ads, s-vmexta.adb: Use Exception_Code instead of a mix of
|
Natural and Integer in various places.
|
Natural and Integer in various places.
|
(Register_VMS_Exception): Use Base_Code_In to compute the exception code
|
(Register_VMS_Exception): Use Base_Code_In to compute the exception code
|
with the severity bits masked off.
|
with the severity bits masked off.
|
(Register_VMS_Exception): Handle the additional exception data pointer
|
(Register_VMS_Exception): Handle the additional exception data pointer
|
argument.
|
argument.
|
|
|
* raise.c (_GNAT_Exception structure): Remove the handled_by_others
|
* raise.c (_GNAT_Exception structure): Remove the handled_by_others
|
component, now reflected by an exported accessor.
|
component, now reflected by an exported accessor.
|
(is_handled_by): New routine to compute whether the propagated
|
(is_handled_by): New routine to compute whether the propagated
|
occurrence matches some handler choice specification. Extracted out of
|
occurrence matches some handler choice specification. Extracted out of
|
get_action_description_for, and expanded to take care of the VMS
|
get_action_description_for, and expanded to take care of the VMS
|
specifities.
|
specifities.
|
(get_action_description_for): Use is_handled_by instead of an explicit
|
(get_action_description_for): Use is_handled_by instead of an explicit
|
complex condition to decide if the current choice at hand catches the
|
complex condition to decide if the current choice at hand catches the
|
propagated occurrence.
|
propagated occurrence.
|
|
|
* raise.h (Exception_Code): New type for C.
|
* raise.h (Exception_Code): New type for C.
|
|
|
* rtsfind.ads (RE_Id, RE_Unit_Table): Add
|
* rtsfind.ads (RE_Id, RE_Unit_Table): Add
|
System.Standard_Library.Exception_Code, to allow references from the
|
System.Standard_Library.Exception_Code, to allow references from the
|
pragma import/export expander.
|
pragma import/export expander.
|
|
|
* a-exexpr.adb (Is_Handled_By_Others, Language_For, Import_Code_For):
|
* a-exexpr.adb (Is_Handled_By_Others, Language_For, Import_Code_For):
|
New accessors to allow easy access to GNAT exception data
|
New accessors to allow easy access to GNAT exception data
|
characteristics.
|
characteristics.
|
(GNAT_GCC_Exception record, Propagate_Exception): Get rid of the
|
(GNAT_GCC_Exception record, Propagate_Exception): Get rid of the
|
redundant Handled_By_Others component, helper for the personality
|
redundant Handled_By_Others component, helper for the personality
|
routine which will now be able to call the appropriate exception data
|
routine which will now be able to call the appropriate exception data
|
accessor instead.
|
accessor instead.
|
|
|
* cstand.adb (Create_Standard): Adjust the type of the Import_Code
|
* cstand.adb (Create_Standard): Adjust the type of the Import_Code
|
component of Standard_Exception_Type to be the closest possible to
|
component of Standard_Exception_Type to be the closest possible to
|
Exception_Code in System.Standard_Library, that we cannot get at this
|
Exception_Code in System.Standard_Library, that we cannot get at this
|
point. Expand a ??? comment to notify that this type node should
|
point. Expand a ??? comment to notify that this type node should
|
probably be rewritten later on.
|
probably be rewritten later on.
|
|
|
* exp_prag.adb (Expand_Pragma_Import_Export_Exception): Adjust the
|
* exp_prag.adb (Expand_Pragma_Import_Export_Exception): Adjust the
|
registration call to include a pointer to the exception object in the
|
registration call to include a pointer to the exception object in the
|
arguments.
|
arguments.
|
|
|
* init.c (__gnat_error_handler): Use Exception_Code and Base_Code_In
|
* init.c (__gnat_error_handler): Use Exception_Code and Base_Code_In
|
instead of int and explicit bitmasks.
|
instead of int and explicit bitmasks.
|
|
|
2004-03-15 Vincent Celier
|
2004-03-15 Vincent Celier
|
|
|
* vms_data.ads: Add new GNAT BIND qualifier /STATIC. Makes /NOSHARED
|
* vms_data.ads: Add new GNAT BIND qualifier /STATIC. Makes /NOSHARED
|
equivalent to /STATIC and /NOSTATIC equivalent to /SHARED.
|
equivalent to /STATIC and /NOSTATIC equivalent to /SHARED.
|
|
|
* a-tasatt.adb (To_Access_Code): Remove this UC instantiation, no
|
* a-tasatt.adb (To_Access_Code): Remove this UC instantiation, no
|
longer needed now that it is in the spec of
|
longer needed now that it is in the spec of
|
System.Tasking.Task_Attributes.
|
System.Tasking.Task_Attributes.
|
|
|
* adaint.h, adaint.c: (__gnat_create_output_file): New function
|
* adaint.h, adaint.c: (__gnat_create_output_file): New function
|
|
|
* gnatcmd.adb: Fix bug introduced in previous rev: /= instead of =
|
* gnatcmd.adb: Fix bug introduced in previous rev: /= instead of =
|
|
|
* g-os_lib.ads, g-os_lib.adb (Create_Output_Text_File): New function.
|
* 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
|
* make.adb (Gnatmake): Do not check the executable suffix; it is being
|
taken care of in Scan_Make_Arg.
|
taken care of in Scan_Make_Arg.
|
(Scan_Make_Arg): Add the executable suffix only if the argument
|
(Scan_Make_Arg): Add the executable suffix only if the argument
|
following -o, in canonical case, does not end with the executable
|
following -o, in canonical case, does not end with the executable
|
suffix. When in verbose mode and executable file name does not end
|
suffix. When in verbose mode and executable file name does not end
|
with executable suffix, output the executable name, in canonical case.
|
with executable suffix, output the executable name, in canonical case.
|
|
|
* s-tataat.ads (Access_Dummy_Wrapper): Add pragma No_Strict_Aliasing
|
* s-tataat.ads (Access_Dummy_Wrapper): Add pragma No_Strict_Aliasing
|
to avoid warnings when instantiating Ada.Task_Attributes.
|
to avoid warnings when instantiating Ada.Task_Attributes.
|
Minor reformating.
|
Minor reformating.
|
|
|
* mlib-prj.adb (Process_Imported_Libraries): Get the imported libraries
|
* mlib-prj.adb (Process_Imported_Libraries): Get the imported libraries
|
in the correct order.
|
in the correct order.
|
|
|
* prj-makr.adb (Process_Directory): No longer use GNAT.Expect, but
|
* prj-makr.adb (Process_Directory): No longer use GNAT.Expect, but
|
redirect standard output and error to a file for the invocation of the
|
redirect standard output and error to a file for the invocation of the
|
compiler, then read the file.
|
compiler, then read the file.
|
|
|
* prj-nmsc.adb (Find_Sources): Use the Display_Value for each
|
* prj-nmsc.adb (Find_Sources): Use the Display_Value for each
|
directory, instead of the Value.
|
directory, instead of the Value.
|
(Find_Source_Dirs): Remove useless code & comments.
|
(Find_Source_Dirs): Remove useless code & comments.
|
|
|
2004-03-15 Ed Schonberg
|
2004-03-15 Ed Schonberg
|
|
|
* exp_ch3.adb (Freeze_Record_Type): If a primitive operation of a
|
* exp_ch3.adb (Freeze_Record_Type): If a primitive operation of a
|
tagged type is inherited, and the parent operation is not frozen yet,
|
tagged type is inherited, and the parent operation is not frozen yet,
|
force generation of a freeze node for the inherited operation, so the
|
force generation of a freeze node for the inherited operation, so the
|
corresponding dispatch entry is properly initialized.
|
corresponding dispatch entry is properly initialized.
|
(Make_Predefined_Primitive_Specs): Check that return type is Boolean
|
(Make_Predefined_Primitive_Specs): Check that return type is Boolean
|
when looking for user-defined equality operation.
|
when looking for user-defined equality operation.
|
|
|
* exp_ch4.adb (Expand_Composite_Equality): Check that return type is
|
* exp_ch4.adb (Expand_Composite_Equality): Check that return type is
|
boolean when locating primitive equality of tagged component.
|
boolean when locating primitive equality of tagged component.
|
|
|
* exp_ch5.adb (Expand_Assign_Array): If the left-hand side is a
|
* 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
|
bit-aligned field and the right-hand side a string literal, introduce
|
a temporary before expanding assignment into a loop.
|
a temporary before expanding assignment into a loop.
|
|
|
* exp_ch9.adb (Expand_N_Task_Type_Declaration): Copy expression for
|
* exp_ch9.adb (Expand_N_Task_Type_Declaration): Copy expression for
|
priority in full, to ensure that any expanded subepxressions of it are
|
priority in full, to ensure that any expanded subepxressions of it are
|
elaborated in the scope of the init_proc.
|
elaborated in the scope of the init_proc.
|
|
|
* exp_prag.adb (Expand_Pragma_Import): Search for initialization call
|
* exp_prag.adb (Expand_Pragma_Import): Search for initialization call
|
after object declaration, skipping over code that may have been
|
after object declaration, skipping over code that may have been
|
generated for validity checks.
|
generated for validity checks.
|
|
|
* sem_ch12.adb (Validate_Private_Type_Instance): If type has unknown
|
* sem_ch12.adb (Validate_Private_Type_Instance): If type has unknown
|
discriminants, ignore the known discriminants of its full view, if
|
discriminants, ignore the known discriminants of its full view, if
|
any, to check legality.
|
any, to check legality.
|
|
|
* sem_ch3.adb (Complete_Private_Subtype): Do not create constrained
|
* sem_ch3.adb (Complete_Private_Subtype): Do not create constrained
|
component if type has unknown discriminants.
|
component if type has unknown discriminants.
|
(Analyze_Private_Extension_Declaration): Discriminant constraint is
|
(Analyze_Private_Extension_Declaration): Discriminant constraint is
|
null if type has unknown discriminants.
|
null if type has unknown discriminants.
|
|
|
* sem_ch6.adb (Analyze_Generic_Subprogram_Body): Generate reference
|
* sem_ch6.adb (Analyze_Generic_Subprogram_Body): Generate reference
|
for end label when present.
|
for end label when present.
|
|
|
* s-fileio.adb (Open): When called with a C_Stream, use given name for
|
* s-fileio.adb (Open): When called with a C_Stream, use given name for
|
temporary file, rather than an empty string.
|
temporary file, rather than an empty string.
|
|
|
2004-03-15 Ed Falis
|
2004-03-15 Ed Falis
|
|
|
* s-thread.adb: Removed, no longer used.
|
* s-thread.adb: Removed, no longer used.
|
|
|
2004-03-15 Richard Kenner
|
2004-03-15 Richard Kenner
|
|
|
* decl.c (target.h): Now include.
|
* decl.c (target.h): Now include.
|
(gnat_to_gnu_entity, case E_Access_Type): Use mode derived from ESIZE
|
(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.
|
in new build_pointer_from_mode calls for non-fat/non-thin pointer.
|
(validate_size): For POINTER_TYPE, get smallest size permitted on
|
(validate_size): For POINTER_TYPE, get smallest size permitted on
|
machine.
|
machine.
|
|
|
* fe.h: Sort Einfo decls and add Set_Mechanism.
|
* fe.h: Sort Einfo decls and add Set_Mechanism.
|
|
|
* Makefile.in: (LIBGNAT_SRCS): Remove types.h.
|
* Makefile.in: (LIBGNAT_SRCS): Remove types.h.
|
(ada/decl.o): Depends on target.h.
|
(ada/decl.o): Depends on target.h.
|
|
|
* trans.c (tree_transform, N_Unchecked_Type_Conversion): Do not use
|
* trans.c (tree_transform, N_Unchecked_Type_Conversion): Do not use
|
FUNCTION_BOUNDARY; always use TYPE_ALIGN.
|
FUNCTION_BOUNDARY; always use TYPE_ALIGN.
|
|
|
2004-03-15 Thomas Quinot
|
2004-03-15 Thomas Quinot
|
|
|
* 5ztpopsp.adb, 56tpopsp.adb: Fix spelling of Task_ID.
|
* 5ztpopsp.adb, 56tpopsp.adb: Fix spelling of Task_ID.
|
|
|
* exp_ch4.adb (Expand_N_Indexed_Component): Do not call
|
* exp_ch4.adb (Expand_N_Indexed_Component): Do not call
|
Insert_Dereference_Action when rewriting an implicit dereference into
|
Insert_Dereference_Action when rewriting an implicit dereference into
|
an explicit one, this will be taken care of during expansion of the
|
an explicit one, this will be taken care of during expansion of the
|
explicit dereference.
|
explicit dereference.
|
(Expand_N_Slice): Same. Always do the rewriting, even for the case
|
(Expand_N_Slice): Same. Always do the rewriting, even for the case
|
of non-packed slices, since the dereference action generated by
|
of non-packed slices, since the dereference action generated by
|
expansion of the explicit dereference is needed in any case.
|
expansion of the explicit dereference is needed in any case.
|
(Expand_N_Selected_Component): When rewriting an implicit dereference,
|
(Expand_N_Selected_Component): When rewriting an implicit dereference,
|
analyze and resolve the rewritten explicit dereference so it is seen
|
analyze and resolve the rewritten explicit dereference so it is seen
|
by the expander.
|
by the expander.
|
(Insert_Dereference_Action): This procedure is now called only for the
|
(Insert_Dereference_Action): This procedure is now called only for the
|
expansion of an N_Explcit_Dereference_Node. Do insert a check even for
|
expansion of an N_Explcit_Dereference_Node. Do insert a check even for
|
dereferences that do not come from source (including explicit
|
dereferences that do not come from source (including explicit
|
dereferences resulting from rewriting implicit ones), but do not
|
dereferences resulting from rewriting implicit ones), but do not
|
recursively insert a check for the dereference nodes contained within
|
recursively insert a check for the dereference nodes contained within
|
the check.
|
the check.
|
(Insert_Dereference_Action): Clarify and correct comment.
|
(Insert_Dereference_Action): Clarify and correct comment.
|
|
|
2004-03-08 Paolo Bonzini
|
2004-03-08 Paolo Bonzini
|
|
|
PR ada/14131
|
PR ada/14131
|
Move language detection to the top level.
|
Move language detection to the top level.
|
* config-lang.in: Build by default.
|
* config-lang.in: Build by default.
|
|
|
2004-03-05 Robert Dewar
|
2004-03-05 Robert Dewar
|
|
|
* 56taprop.adb, 5ataprop.adb: Remove unneeded unchecked conversions
|
* 56taprop.adb, 5ataprop.adb: Remove unneeded unchecked conversions
|
|
|
* a-tags.adb, a-tags.ads, s-finimp.adb, s-finroo.ads,
|
* a-tags.adb, a-tags.ads, s-finimp.adb, s-finroo.ads,
|
i-cpoint.ads, i-cpoint.adb, i-cstrin.adb, i-cstrin.ads,
|
i-cpoint.ads, i-cpoint.adb, i-cstrin.adb, i-cstrin.ads,
|
5iosinte.ads, 5sosinte.ads, 5staspri.ads, 5itaprop.adb,
|
5iosinte.ads, 5sosinte.ads, 5staspri.ads, 5itaprop.adb,
|
5staprop.adb, 5wtaprop.adb, s-tataat.ads, s-tataat.adb: Move
|
5staprop.adb, 5wtaprop.adb, s-tataat.ads, s-tataat.adb: Move
|
unchecked conversion to spec to avoid warnings.
|
unchecked conversion to spec to avoid warnings.
|
|
|
* s-tasini.adb, s-taskin.ads, 5atpopsp.adb: Correct spelling Task_Id
|
* s-tasini.adb, s-taskin.ads, 5atpopsp.adb: Correct spelling Task_Id
|
to Task_ID
|
to Task_ID
|
|
|
* 7stpopsp.adb: Correct casing in To_Task_ID call
|
* 7stpopsp.adb: Correct casing in To_Task_ID call
|
|
|
* a-strsea.ads, a-strsea.adb: Minor reformatting
|
* a-strsea.ads, a-strsea.adb: Minor reformatting
|
|
|
* einfo.ads, einfo.adb: Define new flag No_Strict_Aliasing
|
* einfo.ads, einfo.adb: Define new flag No_Strict_Aliasing
|
|
|
* errout.ads: Switch for VMS is now NO_STRICT_ALIASING.
|
* errout.ads: Switch for VMS is now NO_STRICT_ALIASING.
|
Adjust Max_Msg_Length to be clearly large enough.
|
Adjust Max_Msg_Length to be clearly large enough.
|
|
|
* fe.h: Define In_Same_Source_Unit
|
* fe.h: Define In_Same_Source_Unit
|
|
|
* osint.adb: Add pragma Warnings Off to suppress warnings
|
* osint.adb: Add pragma Warnings Off to suppress warnings
|
* g-dyntab.adb, g-table.adb, g-thread.adb: Add Warnings (Off) to kill
|
* g-dyntab.adb, g-table.adb, g-thread.adb: Add Warnings (Off) to kill
|
aliasing warnings.
|
aliasing warnings.
|
|
|
* opt.ads: Put entries in alpha order. Add entry for No_Strict_Aliasing
|
* opt.ads: Put entries in alpha order. Add entry for No_Strict_Aliasing
|
|
|
* par-prag.adb: Add dummy entry for No_Strict_Aliasing pragma
|
* par-prag.adb: Add dummy entry for No_Strict_Aliasing pragma
|
|
|
* sem_ch13.adb: Generate validate unchecked conversion nodes for gcc.
|
* sem_ch13.adb: Generate validate unchecked conversion nodes for gcc.
|
|
|
* sem_ch3.adb: Set No_Strict_Aliasing flag if config pragma set.
|
* sem_ch3.adb: Set No_Strict_Aliasing flag if config pragma set.
|
|
|
* sem_prag.adb: Implement pragma No_Strict_Aliasing.
|
* sem_prag.adb: Implement pragma No_Strict_Aliasing.
|
|
|
* sinfo.ads: Remove obsolete comment on validate unchecked conversion
|
* sinfo.ads: Remove obsolete comment on validate unchecked conversion
|
node. We now do generate them for gcc back end.
|
node. We now do generate them for gcc back end.
|
|
|
* table.adb, sinput.adb: Add pragma Warnings Off to suppress aliasing
|
* table.adb, sinput.adb: Add pragma Warnings Off to suppress aliasing
|
warning.
|
warning.
|
|
|
* sinput-c.adb: Fix bad name in header.
|
* sinput-c.adb: Fix bad name in header.
|
Add pragma Warnings Off to suppress aliasing warning.
|
Add pragma Warnings Off to suppress aliasing warning.
|
|
|
* sinput-l.adb: 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
|
* snames.h, snames.ads, snames.adb: Add entry for pragma
|
No_Strict_Aliasing.
|
No_Strict_Aliasing.
|
|
|
2004-03-05 Vincent Celier
|
2004-03-05 Vincent Celier
|
|
|
* prj-com.ads: Add hash table Files_Htable to check when a file name
|
* prj-com.ads: Add hash table Files_Htable to check when a file name
|
is already a source of another project.
|
is already a source of another project.
|
|
|
* prj-nmsc.adb (Record_Source): Before recording a new source, check
|
* 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
|
if its file name is not already a source of another project. Report an
|
error if it is.
|
error if it is.
|
|
|
* gnatcmd.adb: When GNAT PRETTY is invoked with a project file and no
|
* 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.
|
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
|
* vms_conv.adb (Initialize): GNAT PRETTY may be called with any number
|
of file names.
|
of file names.
|
|
|
* vms_data.ads: Correct documentation of new /OPTIMIZE keyword
|
* vms_data.ads: Correct documentation of new /OPTIMIZE keyword
|
NO_STRICT_ALIASING. Add new qualifier for GNAT PRETTY:
|
NO_STRICT_ALIASING. Add new qualifier for GNAT PRETTY:
|
/RUNTIME_SYSTEM=, converted to --RTS=
|
/RUNTIME_SYSTEM=, converted to --RTS=
|
/NOTABS, converted to -notabs
|
/NOTABS, converted to -notabs
|
|
|
2004-03-05 Pascal Obry
|
2004-03-05 Pascal Obry
|
|
|
* make.adb: Minor reformatting.
|
* make.adb: Minor reformatting.
|
|
|
2004-03-05 Ed Schonberg
|
2004-03-05 Ed Schonberg
|
|
|
Part of implemention of AI-262.
|
Part of implemention of AI-262.
|
* par-ch10.adb (P_Context_Clause): Recognize private with_clauses.
|
* par-ch10.adb (P_Context_Clause): Recognize private with_clauses.
|
|
|
* sem_ch10.ads, sem_ch10.adb: (Install_Private_With_Clauses): New
|
* sem_ch10.ads, sem_ch10.adb: (Install_Private_With_Clauses): New
|
procedure.
|
procedure.
|
|
|
* sem_ch3.adb (Analyze_Component_Declaration): Improve error message
|
* sem_ch3.adb (Analyze_Component_Declaration): Improve error message
|
when component type is a partially constrained class-wide subtype.
|
when component type is a partially constrained class-wide subtype.
|
(Constrain_Discriminated_Type): If parent type has unknown
|
(Constrain_Discriminated_Type): If parent type has unknown
|
discriminants, a constraint is illegal, even if full view has
|
discriminants, a constraint is illegal, even if full view has
|
discriminants.
|
discriminants.
|
(Build_Derived_Record_Type): Inherit discriminants when deriving a type
|
(Build_Derived_Record_Type): Inherit discriminants when deriving a type
|
with unknown discriminants whose full view is a discriminated record.
|
with unknown discriminants whose full view is a discriminated record.
|
|
|
* sem_ch7.adb (Preserve_Full_Attributes): Preserve Has_Discriminants
|
* sem_ch7.adb (Preserve_Full_Attributes): Preserve Has_Discriminants
|
flag, to handle properly derivations of tagged types with unknown
|
flag, to handle properly derivations of tagged types with unknown
|
discriminants.
|
discriminants.
|
(Analyze_Package_Spec, Analyze_Package_Body): Install
|
(Analyze_Package_Spec, Analyze_Package_Body): Install
|
Private_With_Clauses before analyzing private part or body.
|
Private_With_Clauses before analyzing private part or body.
|
|
|
* einfo.ads: Indicate that both Has_Unknown_Discriminants and
|
* einfo.ads: Indicate that both Has_Unknown_Discriminants and
|
Has_Discriminants can be true for a given type (documentation).
|
Has_Discriminants can be true for a given type (documentation).
|
|
|
2004-03-05 Arnaud Charlet
|
2004-03-05 Arnaud Charlet
|
|
|
* s-restri.ads: Fix license (GPL->GMGPL).
|
* s-restri.ads: Fix license (GPL->GMGPL).
|
|
|
* s-tassta.adb: Minor reformatting.
|
* s-tassta.adb: Minor reformatting.
|
|
|
* s-tasren.adb: Replace manual handling of Self_Id.ATC_Nesting_Level
|
* 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 calls to Exit_One_ATC_Level, since additional clean up is performed
|
by this function.
|
by this function.
|
|
|
* s-tpobop.adb: Replace manual handling of Self_Id.ATC_Nesting_Level
|
* 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 calls to Exit_One_ATC_Level, since additional clean up is performed
|
by this function.
|
by this function.
|
|
|
2004-03-05 Richard Kenner
|
2004-03-05 Richard Kenner
|
|
|
* trans.c: Reflect GCC changes to fix bootstrap problem.
|
* trans.c: Reflect GCC changes to fix bootstrap problem.
|
Add warning for suspicious aliasing unchecked conversion.
|
Add warning for suspicious aliasing unchecked conversion.
|
|
|
2004-03-05 GNAT Script
|
2004-03-05 GNAT Script
|
|
|
* Make-lang.in: Makefile automatically updated
|
* Make-lang.in: Makefile automatically updated
|
|
|
2004-03-02 Emmanuel Briot
|
2004-03-02 Emmanuel Briot
|
|
|
* ali.adb (Read_Instantiation_Instance): Do not modify the
|
* ali.adb (Read_Instantiation_Instance): Do not modify the
|
current_file_num when reading information about instantiations, since
|
current_file_num when reading information about instantiations, since
|
this corrupts files in later references.
|
this corrupts files in later references.
|
|
|
2004-03-02 Vincent Celier
|
2004-03-02 Vincent Celier
|
|
|
* bcheck.adb (Check_Consistency): Get the full path of an ALI file
|
* bcheck.adb (Check_Consistency): Get the full path of an ALI file
|
before checking if it is read-only.
|
before checking if it is read-only.
|
|
|
* bld.adb (Recursive_Process): Concatenate .src_dirs in front
|
* bld.adb (Recursive_Process): Concatenate .src_dirs in front
|
of SRC_DIRS and eliminate duplicates.
|
of SRC_DIRS and eliminate duplicates.
|
|
|
* gprcmd.adb: Replace command "path" with command "path_sep" to return
|
* gprcmd.adb: Replace command "path" with command "path_sep" to return
|
the path separator.
|
the path separator.
|
(Usage): Document path_sep
|
(Usage): Document path_sep
|
|
|
* Makefile.generic: For Ada and GNU C++ cases, link directly with the
|
* Makefile.generic: For Ada and GNU C++ cases, link directly with the
|
C++ compiler. No need for a script.
|
C++ compiler. No need for a script.
|
Replace use of C*_INCLUDE_PATH env var for GCC compilers with CPATH.
|
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
|
Do not call gprcmd to build the C*_INCLUDE_PATHs, do it with function
|
subst.
|
subst.
|
|
|
* prj-env.adb (For_All_Source_Dirs): Only add source dirs in project
|
* prj-env.adb (For_All_Source_Dirs): Only add source dirs in project
|
where there are Ada sources.
|
where there are Ada sources.
|
(Set_Ada_Paths): Only add to the include path the source dirs of project
|
(Set_Ada_Paths): Only add to the include path the source dirs of project
|
with Ada sources.
|
with Ada sources.
|
(Add_To_Path): Add the Display_Values of the directories, not their
|
(Add_To_Path): Add the Display_Values of the directories, not their
|
Values.
|
Values.
|
|
|
* prj-nmsc.adb (Find_Sources): Set flag Sources_Present in the project
|
* prj-nmsc.adb (Find_Sources): Set flag Sources_Present in the project
|
data.
|
data.
|
|
|
* prj-nmsc.adb (Add_ALI_For): Make sure that the element Display_Value
|
* prj-nmsc.adb (Add_ALI_For): Make sure that the element Display_Value
|
is not No_Name.
|
is not No_Name.
|
(Find_Source_Dirs): Set Display_Value to a non canonicalized value, only
|
(Find_Source_Dirs): Set Display_Value to a non canonicalized value, only
|
Value is canonicalized.
|
Value is canonicalized.
|
(Language_Independent_Check): Do not copy Value to Display_Value when
|
(Language_Independent_Check): Do not copy Value to Display_Value when
|
canonicalizing Value.
|
canonicalizing Value.
|
|
|
* prj-part.adb (Post_Parse_Context_Clause): Compare canonical cased
|
* prj-part.adb (Post_Parse_Context_Clause): Compare canonical cased
|
path to find limited with cycles.
|
path to find limited with cycles.
|
(Parse_Single_Project): Use canonical cased path to find the end of a
|
(Parse_Single_Project): Use canonical cased path to find the end of a
|
with cycle.
|
with cycle.
|
|
|
2004-03-02 Ed Schonberg
|
2004-03-02 Ed Schonberg
|
|
|
* sem_ch10.adb (Optional_Subunit): Verify that unit contains a subunit
|
* sem_ch10.adb (Optional_Subunit): Verify that unit contains a subunit
|
and not a child unit.
|
and not a child unit.
|
|
|
* sinfo.ads, sinfo.adb: Rearrange flags so that Private_Present can
|
* sinfo.ads, sinfo.adb: Rearrange flags so that Private_Present can
|
appear in a with_clause.
|
appear in a with_clause.
|
|
|
* decl.c (gnat_to_gnu_type): If entity is a generic type, which can
|
* 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.
|
only happen in type_annotate mode, do not try to elaborate it.
|
|
|
* exp_util.adb (Force_Evaluation): If expression is a selected
|
* exp_util.adb (Force_Evaluation): If expression is a selected
|
component on the left of an assignment, use a renaming rather than a
|
component on the left of an assignment, use a renaming rather than a
|
temporary to remove side effects.
|
temporary to remove side effects.
|
|
|
* freeze.adb (Freeze_Entity): Do not freeze a global entity within an
|
* freeze.adb (Freeze_Entity): Do not freeze a global entity within an
|
inlined instance body, which is analyzed before the end of the
|
inlined instance body, which is analyzed before the end of the
|
enclosing scope.
|
enclosing scope.
|
|
|
2004-03-02 Robert Dewar
|
2004-03-02 Robert Dewar
|
|
|
* par-ch10.adb, par-ch3.adb, par-ch4.adb, scng.adb,
|
* par-ch10.adb, par-ch3.adb, par-ch4.adb, scng.adb,
|
sem_ch4.adb: Use new feature for substitution of keywords in VMS
|
sem_ch4.adb: Use new feature for substitution of keywords in VMS
|
|
|
* errout.ads, errout.adb: Implement new circuit for substitution of
|
* errout.ads, errout.adb: Implement new circuit for substitution of
|
keywords in VMS.
|
keywords in VMS.
|
|
|
* sem_case.adb (Analyze_Choices): Place message properly when case is
|
* sem_case.adb (Analyze_Choices): Place message properly when case is
|
a subtype reference rather than an explicit range.
|
a subtype reference rather than an explicit range.
|
|
|
* sem_elim.adb, s-tpobop.ads, exp_ch2.adb: Minor reformatting
|
* sem_elim.adb, s-tpobop.ads, exp_ch2.adb: Minor reformatting
|
|
|
2004-03-02 Doug Rupp
|
2004-03-02 Doug Rupp
|
|
|
* init.c (__gnat_initialize)[VMS]: Resignal RDB-E-STREAM_EOF.
|
* init.c (__gnat_initialize)[VMS]: Resignal RDB-E-STREAM_EOF.
|
|
|
2004-03-02 Thomas Quinot
|
2004-03-02 Thomas Quinot
|
|
|
* s-tporft.adb: Add missing locking around call to Initialize_ATCB.
|
* s-tporft.adb: Add missing locking around call to Initialize_ATCB.
|
|
|
2004-03-02 Richard Kenner
|
2004-03-02 Richard Kenner
|
|
|
* utils.c (finish_record_type): Do not set DECL_NONADDRESSABLE for a
|
* utils.c (finish_record_type): Do not set DECL_NONADDRESSABLE for a
|
BLKmode bitfield.
|
BLKmode bitfield.
|
|
|
2004-02-25 Robert Dewar
|
2004-02-25 Robert Dewar
|
|
|
* 51osinte.ads, 52osinte.ads, 53osinte.ads, 54osinte.ads,
|
* 51osinte.ads, 52osinte.ads, 53osinte.ads, 54osinte.ads,
|
55osinte.ads, 56osinte.ads, 5aosinte.ads, 5bosinte.ads,
|
55osinte.ads, 56osinte.ads, 5aosinte.ads, 5bosinte.ads,
|
5cosinte.ads, 5fosinte.ads, 5gosinte.ads, 5hosinte.ads,
|
5cosinte.ads, 5fosinte.ads, 5gosinte.ads, 5hosinte.ads,
|
5iosinte.ads, 5losinte.ads, 5nosinte.ads, 5oosinte.ads,
|
5iosinte.ads, 5losinte.ads, 5nosinte.ads, 5oosinte.ads,
|
5posinte.ads, 5sosinte.ads, 5tosinte.ads, 5vosinte.ads,
|
5posinte.ads, 5sosinte.ads, 5tosinte.ads, 5vosinte.ads,
|
5wosinte.ads, 5zosinte.ads: Move instances of Unchecked_Conversion to
|
5wosinte.ads, 5zosinte.ads: Move instances of Unchecked_Conversion to
|
the defining instance of the type to avoid aliasing problems.
|
the defining instance of the type to avoid aliasing problems.
|
Fix copyright header. Fix bad comments in package header.
|
Fix copyright header. Fix bad comments in package header.
|
|
|
* exp_util.adb, prj-part.adb, prj-part.adb: Minor reformatting
|
* exp_util.adb, prj-part.adb, prj-part.adb: Minor reformatting
|
|
|
2004-02-25 Ed Schonberg
|
2004-02-25 Ed Schonberg
|
|
|
* exp_ch2.adb (Param_Entity): Handle properly formals that have been
|
* exp_ch2.adb (Param_Entity): Handle properly formals that have been
|
rewritten as references when aliased through an address clause.
|
rewritten as references when aliased through an address clause.
|
|
|
* sem_ch4.adb (Try_Indirect_Call): Normalize actuals before checking
|
* sem_ch4.adb (Try_Indirect_Call): Normalize actuals before checking
|
whether call can be interpreted as an indirect call to the result of a
|
whether call can be interpreted as an indirect call to the result of a
|
parameterless function call returning an access subprogram.
|
parameterless function call returning an access subprogram.
|
|
|
2004-02-25 Arnaud Charlet
|
2004-02-25 Arnaud Charlet
|
|
|
Code clean up:
|
Code clean up:
|
* exp_ch7.adb (Make_Clean): Remove generation of calls to
|
* exp_ch7.adb (Make_Clean): Remove generation of calls to
|
Unlock[_Entries], since this is now done by Service_Entries directly.
|
Unlock[_Entries], since this is now done by Service_Entries directly.
|
|
|
* exp_ch9.adb (Build_Protected_Subprogram_Body): ditto.
|
* exp_ch9.adb (Build_Protected_Subprogram_Body): ditto.
|
|
|
* s-tpobop.ads, s-tpobop.adb (PO_Service_Entries): New nested procedure
|
* s-tpobop.ads, s-tpobop.adb (PO_Service_Entries): New nested procedure
|
Requeue_Call for better code readability. Change spec and update calls:
|
Requeue_Call for better code readability. Change spec and update calls:
|
PO_Service_Entries now unlock the PO on exit.
|
PO_Service_Entries now unlock the PO on exit.
|
(Protected_Entry_Call, Timed_Protected_Entry_Call): Update calls to
|
(Protected_Entry_Call, Timed_Protected_Entry_Call): Update calls to
|
PO_Service_Entries.
|
PO_Service_Entries.
|
|
|
* s-tposen.ads, s-tposen.adb (Service_Entry): Now unlock the PO on exit.
|
* 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.
|
* s-taenca.adb, s-tasren.adb: Update calls to PO_Service_Entries.
|
|
|
2004-02-25 Sergey Rybin
|
2004-02-25 Sergey Rybin
|
|
|
* exp_ch9.adb (Build_Simple_Entry_Call): Prevent expanding the
|
* exp_ch9.adb (Build_Simple_Entry_Call): Prevent expanding the
|
protected subprogram call and analyzing the result of such expanding
|
protected subprogram call and analyzing the result of such expanding
|
in case when the called protected subprogram is eliminated.
|
in case when the called protected subprogram is eliminated.
|
|
|
* sem_elim.adb (Check_Eliminated): Skip blocks when comparing scope
|
* sem_elim.adb (Check_Eliminated): Skip blocks when comparing scope
|
names.
|
names.
|
|
|
2004-02-25 Jerome Guitton
|
2004-02-25 Jerome Guitton
|
|
|
* Makefile.in: Clean ups.
|
* Makefile.in: Clean ups.
|
|
|
2004-02-23 Ed Schonberg
|
2004-02-23 Ed Schonberg
|
|
|
* exp_ch6.adb (Expand_N_Subprogram_Declaration): Do not create
|
* exp_ch6.adb (Expand_N_Subprogram_Declaration): Do not create
|
protected operations if original subprogram is flagged as eliminated.
|
protected operations if original subprogram is flagged as eliminated.
|
(Expand_N_Subprogram_Body): For a protected operation, create
|
(Expand_N_Subprogram_Body): For a protected operation, create
|
discriminals for next operation before checking whether the operation
|
discriminals for next operation before checking whether the operation
|
is eliminated.
|
is eliminated.
|
|
|
* exp_ch9.adb (Expand_N_Protected_Body,
|
* exp_ch9.adb (Expand_N_Protected_Body,
|
Expand_N_Protected_Type_Declaration): Do not generate specs and bodies
|
Expand_N_Protected_Type_Declaration): Do not generate specs and bodies
|
for internal protected operations if the original subprogram is
|
for internal protected operations if the original subprogram is
|
eliminated.
|
eliminated.
|
|
|
* sem_elim.adb (Check_Eliminated): Handle properly protected operations
|
* sem_elim.adb (Check_Eliminated): Handle properly protected operations
|
declared in a single protected object.
|
declared in a single protected object.
|
|
|
2004-02-23 Vincent Celier
|
2004-02-23 Vincent Celier
|
|
|
* prj-attr.adb: Make attribute Builder'Executable an associative array,
|
* prj-attr.adb: Make attribute Builder'Executable an associative array,
|
case insensitive if file names are case insensitive, instead of a
|
case insensitive if file names are case insensitive, instead of a
|
standard associative array.
|
standard associative array.
|
|
|
* prj-attr.adb (Initialize): For 'b' associative arrays, do not set
|
* prj-attr.adb (Initialize): For 'b' associative arrays, do not set
|
them as case insensitive on platforms where the file names are case
|
them as case insensitive on platforms where the file names are case
|
sensitive.
|
sensitive.
|
|
|
* prj-part.adb (Parse_Single_Project): Make sure, when checking if
|
* prj-part.adb (Parse_Single_Project): Make sure, when checking if
|
project file has already been parsed that canonical path are compared.
|
project file has already been parsed that canonical path are compared.
|
|
|
2004-02-23 Robert Dewar
|
2004-02-23 Robert Dewar
|
|
|
* sinput-c.ads: Correct bad unit title in header
|
* sinput-c.ads: Correct bad unit title in header
|
|
|
* freeze.adb: Minor reformatting
|
* freeze.adb: Minor reformatting
|
|
|
2004-02-23 Richard Kenner
|
2004-02-23 Richard Kenner
|
|
|
* trans.c (tree_transform, case N_Procedure_Call_Statement): For
|
* trans.c (tree_transform, case N_Procedure_Call_Statement): For
|
nonaddressable COMPONENT_REF that is removing padding that we are
|
nonaddressable COMPONENT_REF that is removing padding that we are
|
taking the address of, take the address of the padded record instead
|
taking the address of, take the address of the padded record instead
|
if item is variable size.
|
if item is variable size.
|
|
|
2004-02-20 Robert Dewar
|
2004-02-20 Robert Dewar
|
|
|
* bld.adb, exp_util.adb, gprcmd.adb: Minor reformatting
|
* bld.adb, exp_util.adb, gprcmd.adb: Minor reformatting
|
|
|
2004-02-20 Ed Schonberg
|
2004-02-20 Ed Schonberg
|
|
|
* freeze.adb (Freeze_Record_Type): Generalize mechanism that generates
|
* freeze.adb (Freeze_Record_Type): Generalize mechanism that generates
|
itype references for the constrained designated type of a component
|
itype references for the constrained designated type of a component
|
whose base type is already frozen.
|
whose base type is already frozen.
|
|
|
2004-02-20 Arnaud Charlet
|
2004-02-20 Arnaud Charlet
|
|
|
* init.c (__gnat_error_handler [tru64]): Rewrite previous change to
|
* init.c (__gnat_error_handler [tru64]): Rewrite previous change to
|
avoid GCC warnings.
|
avoid GCC warnings.
|
|
|
2004-02-20 Sergey Rybin
|
2004-02-20 Sergey Rybin
|
|
|
* sem_ch12.adb (Analyze_Formal_Package): Create a new defining
|
* sem_ch12.adb (Analyze_Formal_Package): Create a new defining
|
identifier for a phantom package that rewrites the formal package
|
identifier for a phantom package that rewrites the formal package
|
declaration with a box. The Add semantic decorations for the defining
|
declaration with a box. The Add semantic decorations for the defining
|
identifier from the original node (that represents the formal package).
|
identifier from the original node (that represents the formal package).
|
|
|
2004-02-19 Matt Kraai
|
2004-02-19 Matt Kraai
|
|
|
* Make-lang.in (ada/stamp-sdefault): Use the top level
|
* Make-lang.in (ada/stamp-sdefault): Use the top level
|
move-if-change.
|
move-if-change.
|
|
|
2004-02-19 Richard Henderson
|
2004-02-19 Richard Henderson
|
|
|
* misc.c (record_code_position): Add third build arg for RTL_EXPR.
|
* misc.c (record_code_position): Add third build arg for RTL_EXPR.
|
|
|
2004-02-18 Emmanuel Briot
|
2004-02-18 Emmanuel Briot
|
|
|
* ali.ads, ali.adb (First_Sdep_Entry): No longer a constant, so that
|
* ali.ads, ali.adb (First_Sdep_Entry): No longer a constant, so that
|
Scan_ALI can be used for multiple ALI files without reinitializing
|
Scan_ALI can be used for multiple ALI files without reinitializing
|
between calls.
|
between calls.
|
|
|
2004-02-18 Robert Dewar
|
2004-02-18 Robert Dewar
|
|
|
* debug.adb: Minor reformatting.
|
* debug.adb: Minor reformatting.
|
|
|
2004-02-18 Richard Kenner
|
2004-02-18 Richard Kenner
|
|
|
* decl.c (gnat_to_gnu_entity, case object): Set DECL_POINTER_ALIAS_SET
|
* decl.c (gnat_to_gnu_entity, case object): Set DECL_POINTER_ALIAS_SET
|
to zero if there is an address clause.
|
to zero if there is an address clause.
|
|
|
2004-02-18 Thomas Quinot
|
2004-02-18 Thomas Quinot
|
|
|
* exp_util.adb (Side_Effect_Free): Any literal is side effects free.
|
* exp_util.adb (Side_Effect_Free): Any literal is side effects free.
|
|
|
2004-02-18 Gary Dismukes
|
2004-02-18 Gary Dismukes
|
|
|
* layout.adb (Layout_Component_List): Revise generation of call to
|
* layout.adb (Layout_Component_List): Revise generation of call to
|
discriminant-checking function to pass selections of all of the type's
|
discriminant-checking function to pass selections of all of the type's
|
discriminants rather than just the variant-controlling discriminant.
|
discriminants rather than just the variant-controlling discriminant.
|
|
|
2004-02-18 Olivier Hainque
|
2004-02-18 Olivier Hainque
|
|
|
* 5gmastop.adb (Pop_Frame): Do not call exc_unwind, which is bound to
|
* 5gmastop.adb (Pop_Frame): Do not call exc_unwind, which is bound to
|
fail in the current setup and triggers spurious system error messages.
|
fail in the current setup and triggers spurious system error messages.
|
Pretend it occurred and failed instead.
|
Pretend it occurred and failed instead.
|
|
|
2004-02-18 Vincent Celier
|
2004-02-18 Vincent Celier
|
|
|
* bld.adb: Mark FLDFLAGS as saved
|
* bld.adb: Mark FLDFLAGS as saved
|
(Process_Declarative_Items): Add Linker'Linker_Options to FLDFLAGS when
|
(Process_Declarative_Items): Add Linker'Linker_Options to FLDFLAGS when
|
it is not the root project. Put each directory to be
|
it is not the root project. Put each directory to be
|
extended between double quotes to prevent it to be expanded on Windows.
|
extended between double quotes to prevent it to be expanded on Windows.
|
(Recursive_Process): Reset CFLAGS/CXXFLAGS to nothing before processing
|
(Recursive_Process): Reset CFLAGS/CXXFLAGS to nothing before processing
|
the project file. Set them back to their initial values if they have not
|
the project file. Set them back to their initial values if they have not
|
been set in the project file.
|
been set in the project file.
|
|
|
* gprcmd.adb: (Gprdebug, Debug): New global variables
|
* gprcmd.adb: (Gprdebug, Debug): New global variables
|
(Display_Command): New procedure
|
(Display_Command): New procedure
|
(Usage): Document new command "linkopts"
|
(Usage): Document new command "linkopts"
|
Call Display_Command when env var GPRDEBUG has the value "TRUE"
|
Call Display_Command when env var GPRDEBUG has the value "TRUE"
|
Implement new command "linkopts"
|
Implement new command "linkopts"
|
Remove quotes that may be around arguments for "extend"
|
Remove quotes that may be around arguments for "extend"
|
Always call Normalize_Pathname with arguments formatted for the platform
|
Always call Normalize_Pathname with arguments formatted for the platform
|
|
|
* Makefile.generic: Link C/C++ mains with $(FLDFLAGS)
|
* Makefile.generic: Link C/C++ mains with $(FLDFLAGS)
|
Change @echo to @$(display) in target clean to be able to clean silently
|
Change @echo to @$(display) in target clean to be able to clean silently
|
|
|
* Makefile.prolog: Save FLDFLAGS and give it an initial empty value
|
* Makefile.prolog: Save FLDFLAGS and give it an initial empty value
|
|
|
* prj-part.adb (Project_Path_Name_Of): Do not put final result in
|
* prj-part.adb (Project_Path_Name_Of): Do not put final result in
|
canonical case.
|
canonical case.
|
|
|
* prj-part.adb (Parse_Single_Project): Always call with From_Extended
|
* prj-part.adb (Parse_Single_Project): Always call with From_Extended
|
= Extending_All when current project is an extending all project.
|
= Extending_All when current project is an extending all project.
|
|
|
* vms_conv.adb (Output_File_Expected): New Boolean global variable,
|
* vms_conv.adb (Output_File_Expected): New Boolean global variable,
|
set to True only for LINK command, after Unix switch -o.
|
set to True only for LINK command, after Unix switch -o.
|
(Process_Arguments): Set Output_File_Expected to True for LINK command
|
(Process_Arguments): Set Output_File_Expected to True for LINK command
|
after Unix switch -o. When Output_File_Expected is True, never add an
|
after Unix switch -o. When Output_File_Expected is True, never add an
|
extension to a file name.
|
extension to a file name.
|
|
|
* 5vml-tgt.adb (Build_Dynamic_Library): Do not append "/OPTIONS" to the
|
* 5vml-tgt.adb (Build_Dynamic_Library): Do not append "/OPTIONS" to the
|
option file name, only to the --for-linker= switch.
|
option file name, only to the --for-linker= switch.
|
(Option_File_Name): If option file name do not end with ".opt", append
|
(Option_File_Name): If option file name do not end with ".opt", append
|
"/OPTIONS".
|
"/OPTIONS".
|
|
|
2004-02-18 GNAT Script
|
2004-02-18 GNAT Script
|
|
|
* Make-lang.in: Makefile automatically updated
|
* Make-lang.in: Makefile automatically updated
|
|
|
2004-02-17 Matt Kraai
|
2004-02-17 Matt Kraai
|
|
|
* Make-lang.in (stamp-sdefault): Do not depend on
|
* Make-lang.in (stamp-sdefault): Do not depend on
|
move-if-change.
|
move-if-change.
|
|
|
2004-02-12 Zack Weinberg
|
2004-02-12 Zack Weinberg
|
|
|
* config-lang.in: Disable Ada by default until probe logic for
|
* config-lang.in: Disable Ada by default until probe logic for
|
a bootstrap Ada compiler can be moved to the top level configure
|
a bootstrap Ada compiler can be moved to the top level configure
|
script.
|
script.
|
|
|
2004-02-12 Olivier Hainque
|
2004-02-12 Olivier Hainque
|
|
|
* decl.c (components_to_record): Don't claim that the internal fields
|
* decl.c (components_to_record): Don't claim that the internal fields
|
we make to hold the variant parts are semantically addressable, because
|
we make to hold the variant parts are semantically addressable, because
|
they are not.
|
they are not.
|
|
|
* exp_pakd.adb (Create_Packed_Array_Type): Rename Esiz into PASize and
|
* 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.
|
adjust the comment describing the modular type form when we can use it.
|
(Install_PAT): Account for the Esiz renaming.
|
(Install_PAT): Account for the Esiz renaming.
|
|
|
* init.c (__gnat_error_handler for alpha-tru64): Arrange to clear the
|
* init.c (__gnat_error_handler for alpha-tru64): Arrange to clear the
|
sc_onstack context indication before raising the exception to which
|
sc_onstack context indication before raising the exception to which
|
the signal is mapped. Allows better handling of later signals possibly
|
the signal is mapped. Allows better handling of later signals possibly
|
triggered by the resumed user code if the exception is handled.
|
triggered by the resumed user code if the exception is handled.
|
|
|
2004-02-12 Arnaud Charlet
|
2004-02-12 Arnaud Charlet
|
|
|
* 5zinit.adb: Removed, no longer used.
|
* 5zinit.adb: Removed, no longer used.
|
|
|
2004-02-12 Robert Dewar
|
2004-02-12 Robert Dewar
|
|
|
* ali.adb: Remove separating space between parameters on R line. Makes
|
* ali.adb: Remove separating space between parameters on R line. Makes
|
format consistent with format used by the binder for Set_Globals call.
|
format consistent with format used by the binder for Set_Globals call.
|
|
|
* atree.ads, atree.adb: Minor reformatting (new function header format)
|
* atree.ads, atree.adb: Minor reformatting (new function header format)
|
|
|
* bindgen.adb: Add Run-Time Globals documentation section containing
|
* bindgen.adb: Add Run-Time Globals documentation section containing
|
detailed documentation of the globals passed from the binder file to
|
detailed documentation of the globals passed from the binder file to
|
the run time.
|
the run time.
|
|
|
* gnatls.adb: Minor reformatting
|
* gnatls.adb: Minor reformatting
|
|
|
* init.c (__gnat_set_globals): Add note pointing to documentation in
|
* init.c (__gnat_set_globals): Add note pointing to documentation in
|
bindgen.
|
bindgen.
|
|
|
* lib-writ.ads, lib-writ.adb: Remove separating space between
|
* lib-writ.ads, lib-writ.adb: Remove separating space between
|
parameters on R line.
|
parameters on R line.
|
Makes format consistent with format used by the binder for Set_Globals
|
Makes format consistent with format used by the binder for Set_Globals
|
call.
|
call.
|
|
|
* osint.ads: Add 2004 to copyright notice
|
* osint.ads: Add 2004 to copyright notice
|
Minor reformatting
|
Minor reformatting
|
|
|
* snames.ads: Correct capitalization of FIFO_Within_Priorities
|
* snames.ads: Correct capitalization of FIFO_Within_Priorities
|
Noticed during code reading, documentation issue only
|
Noticed during code reading, documentation issue only
|
|
|
* usage.adb: Remove junk line for obsolete C switch
|
* usage.adb: Remove junk line for obsolete C switch
|
Noticed during code reading
|
Noticed during code reading
|
|
|
2004-02-12 Vincent Celier
|
2004-02-12 Vincent Celier
|
|
|
* bld.adb (Process_Declarative_Items): For Source_Dirs call gprcmd
|
* bld.adb (Process_Declarative_Items): For Source_Dirs call gprcmd
|
extend for each directory, so that multiple /** directories are
|
extend for each directory, so that multiple /** directories are
|
extended individually.
|
extended individually.
|
(Recursive_Process): Set the default for LANGUAGES to ada
|
(Recursive_Process): Set the default for LANGUAGES to ada
|
|
|
* gprcmd.adb: Define new command "ignore", to do nothing.
|
* gprcmd.adb: Define new command "ignore", to do nothing.
|
Implement new comment "path".
|
Implement new comment "path".
|
|
|
* Makefile.generic: Suppress output when SILENT is set
|
* Makefile.generic: Suppress output when SILENT is set
|
Make sure that when compiler for C/C++ is gcc, the correct -x switch is
|
Make sure that when compiler for C/C++ is gcc, the correct -x switch is
|
used, so that the correct compiler is invoked.
|
used, so that the correct compiler is invoked.
|
When compiler is gcc/g++, put search path in env vars C_INCLUDE_PATH/
|
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.
|
CXX_INCLUDE_PATH, to avoid failure with too long command lines.
|
|
|
2004-02-12 Jerome Guitton
|
2004-02-12 Jerome Guitton
|
|
|
* Makefile.in: Clean ups and remove obsolete targets.
|
* Makefile.in: Clean ups and remove obsolete targets.
|
|
|
2004-02-12 Ed Schonberg
|
2004-02-12 Ed Schonberg
|
|
|
* exp_ch5.adb: Remove Possible_Unligned_Slice, in favor of the similar
|
* exp_ch5.adb: Remove Possible_Unligned_Slice, in favor of the similar
|
predicate declared in exp_util.
|
predicate declared in exp_util.
|
|
|
* exp_util.adb: Add comments.
|
* exp_util.adb: Add comments.
|
|
|
* sem_ch10.adb (Analyze_Subunit): Remove ultimate parent unit from
|
* sem_ch10.adb (Analyze_Subunit): Remove ultimate parent unit from
|
visibility before compiling context of the subunit.
|
visibility before compiling context of the subunit.
|
|
|
* sem_res.adb (Check_Parameterless_Call): If the context expects a
|
* 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,
|
value but the name is a procedure, do not attempt to analyze as a call,
|
in order to obtain more telling diagnostics.
|
in order to obtain more telling diagnostics.
|
|
|
* sem_util.adb (Wrong_Type): Further enhancement to diagnose missing
|
* sem_util.adb (Wrong_Type): Further enhancement to diagnose missing
|
'Access on parameterless function calls.
|
'Access on parameterless function calls.
|
(Normalize_Actuals): For a parameterless function call with missing
|
(Normalize_Actuals): For a parameterless function call with missing
|
actuals, defer diagnostic until resolution of enclosing call.
|
actuals, defer diagnostic until resolution of enclosing call.
|
|
|
* sem_util.adb (Wrong_Type): If the context type is an access to
|
* sem_util.adb (Wrong_Type): If the context type is an access to
|
subprogram and the expression is a procedure name, suggest a missing
|
subprogram and the expression is a procedure name, suggest a missing
|
'attribute.
|
'attribute.
|
|
|
2004-02-10 Arnaud Charlet ,
|
2004-02-10 Arnaud Charlet ,
|
Nathanael Nerode
|
Nathanael Nerode
|
|
|
PR ada/6637
|
PR ada/6637
|
PR ada/5911
|
PR ada/5911
|
Merge with libada-branch:
|
Merge with libada-branch:
|
* config-lang.in: Build libada only when ada is built.
|
* config-lang.in: Build libada only when ada is built.
|
|
|
2004-02-09 Ed Schonberg
|
2004-02-09 Ed Schonberg
|
|
|
* exp_ch4.adb (Expand_N_Op_Eq): When looking for the primitive equality
|
* 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.
|
for a tagged type, verify that both formals have the same type.
|
|
|
* exp_ch6.adb (Add_Call_By_Copy_Code): Initialize properly the
|
* exp_ch6.adb (Add_Call_By_Copy_Code): Initialize properly the
|
temporary when the formal is an in-parameter and the actual a possibly
|
temporary when the formal is an in-parameter and the actual a possibly
|
unaligned slice.
|
unaligned slice.
|
|
|
* exp_ch9.adb (Expand_Entry_Barrier): Resolve barrier expression even
|
* exp_ch9.adb (Expand_Entry_Barrier): Resolve barrier expression even
|
when expansion is disabled, to ensure proper name capture with
|
when expansion is disabled, to ensure proper name capture with
|
overloaded literals. Condition can be of any boolean type, resolve
|
overloaded literals. Condition can be of any boolean type, resolve
|
accordingly.
|
accordingly.
|
|
|
* sem_ch8.adb (Analyze_Subprogram_Renaming): Emit warning if the
|
* sem_ch8.adb (Analyze_Subprogram_Renaming): Emit warning if the
|
renaming is for a formal subprogram with a default operator name, and
|
renaming is for a formal subprogram with a default operator name, and
|
there is a usable operator that is visible at the point of
|
there is a usable operator that is visible at the point of
|
instantiation.
|
instantiation.
|
|
|
2004-02-09 Robert Dewar
|
2004-02-09 Robert Dewar
|
|
|
* ali.adb (Scan_Ali) Add Ignore_Errors argument. This is a major
|
* ali.adb (Scan_Ali) Add Ignore_Errors argument. This is a major
|
rewrite to ignore errors in ali files, intended to allow tools downward
|
rewrite to ignore errors in ali files, intended to allow tools downward
|
compatibility with new versions of ali files.
|
compatibility with new versions of ali files.
|
|
|
* ali.ads: Add new parameter Ignore_Errors
|
* ali.ads: Add new parameter Ignore_Errors
|
|
|
* bcheck.adb (Check_Consistent_Restrictions): Fix error of sometimes
|
* bcheck.adb (Check_Consistent_Restrictions): Fix error of sometimes
|
duplicating the error message giving the file with restrictions.
|
duplicating the error message giving the file with restrictions.
|
|
|
* debug.adb: Add debug flag I for gnatbind
|
* debug.adb: Add debug flag I for gnatbind
|
|
|
* errout.adb (Set_Msg_Insertion_Node): Suppress extra quotes around
|
* errout.adb (Set_Msg_Insertion_Node): Suppress extra quotes around
|
operators for the case where the operator is a defining operator.
|
operators for the case where the operator is a defining operator.
|
|
|
* exp_ch3.adb: Minor reformatting (new function spec format).
|
* exp_ch3.adb: Minor reformatting (new function spec format).
|
|
|
* exp_ch4.adb: Add comment for previous change, and make minor
|
* exp_ch4.adb: Add comment for previous change, and make minor
|
adjustment to loop to always check for improper loop termination.
|
adjustment to loop to always check for improper loop termination.
|
Minor reformatting throughout (new function spec format).
|
Minor reformatting throughout (new function spec format).
|
|
|
* gnatbind.adb: Implement -di debug flag for gnatbind
|
* gnatbind.adb: Implement -di debug flag for gnatbind
|
|
|
* gnatlink.adb: Call Scan_ALI with Ignore_Errors set to True
|
* gnatlink.adb: Call Scan_ALI with Ignore_Errors set to True
|
|
|
* gnatls.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.
|
* lib-load.adb: Fix bad assertion.
|
Found by testing and code reading.
|
Found by testing and code reading.
|
Minor reformatting.
|
Minor reformatting.
|
|
|
* lib-load.ads: Minor reformatting.
|
* lib-load.ads: Minor reformatting.
|
|
|
* lib-writ.adb: There is only one R line now.
|
* lib-writ.adb: There is only one R line now.
|
|
|
* lib-writ.ads: Add documentation on making downward compatible changes
|
* lib-writ.ads: Add documentation on making downward compatible changes
|
to ali files so old tools work with new ali files.
|
to ali files so old tools work with new ali files.
|
There is only one R line now.
|
There is only one R line now.
|
Add documentation on format incompatibilities (with special GPS note)
|
Add documentation on format incompatibilities (with special GPS note)
|
|
|
* namet.ads, namet.adb: (Is_Operator_Name): New procedure
|
* namet.ads, namet.adb: (Is_Operator_Name): New procedure
|
|
|
* par-load.adb: Minor reformatting
|
* par-load.adb: Minor reformatting
|
|
|
* sem_ch8.adb: Fix to error message from last update
|
* sem_ch8.adb: Fix to error message from last update
|
Minor reformatting and restructuring of code from last update
|
Minor reformatting and restructuring of code from last update
|
|
|
* par-prag.adb, snames.adb, snames.ads, snames.h,
|
* par-prag.adb, snames.adb, snames.ads, snames.h,
|
sem_prag.adb: Implement pragma Profile.
|
sem_prag.adb: Implement pragma Profile.
|
|
|
* stylesw.adb: Implement -gnatyN switch to turn off all style check
|
* stylesw.adb: Implement -gnatyN switch to turn off all style check
|
options.
|
options.
|
|
|
* usage.adb: Add line for -gnatyN switch
|
* usage.adb: Add line for -gnatyN switch
|
|
|
* vms_data.ads: Add entry STYLE_CHECKS=NONE for -gnatyN
|
* vms_data.ads: Add entry STYLE_CHECKS=NONE for -gnatyN
|
|
|
2004-02-09 Albert Lee
|
2004-02-09 Albert Lee
|
|
|
* errno.c: define _SGI_MP_SOURCE for task-safe errno on IRIX
|
* errno.c: define _SGI_MP_SOURCE for task-safe errno on IRIX
|
|
|
2004-02-09 Ed Schonberg
|
2004-02-09 Ed Schonberg
|
|
|
* exp_ch3.adb (Build_Slice_Assignment): Handle properly case of null
|
* exp_ch3.adb (Build_Slice_Assignment): Handle properly case of null
|
slices.
|
slices.
|
|
|
* exp_ch6.adb (Expand_Call): Do not inline a call when the subprogram
|
* 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
|
is nested in an instance that is not frozen yet, to avoid
|
order-of-elaboration problems in gigi.
|
order-of-elaboration problems in gigi.
|
|
|
* sem_attr.adb (Analyze_Attribute, case 'Access): Within an inlined
|
* sem_attr.adb (Analyze_Attribute, case 'Access): Within an inlined
|
body the attribute is legal.
|
body the attribute is legal.
|
|
|
2004-02-09 Robert Dewar
|
2004-02-09 Robert Dewar
|
|
|
* s-rident.ads: Minor comment correction
|
* s-rident.ads: Minor comment correction
|
|
|
* targparm.adb: Remove dependence on uintp completely. There was
|
* targparm.adb: Remove dependence on uintp completely. There was
|
always a bug in Make in that it called Targparm before initializing
|
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 Uint package. The old code appeared to get away with this, but
|
the new code did not! This caused an assertion error in gnatmake.
|
the new code did not! This caused an assertion error in gnatmake.
|
|
|
* targparm.ads: Fix bad comment, restriction pragmas with parameters
|
* targparm.ads: Fix bad comment, restriction pragmas with parameters
|
are indeed fully supported.
|
are indeed fully supported.
|
|
|
2004-02-06 Alan Modra
|
2004-02-06 Alan Modra
|
|
|
* misc.c (default_pass_by_ref): Update INIT_CUMULATIVE_ARGS call.
|
* misc.c (default_pass_by_ref): Update INIT_CUMULATIVE_ARGS call.
|
|
|
2004-02-05 Kazu Hirata
|
2004-02-05 Kazu Hirata
|
|
|
* ada/utils.c (create_param_decl): Replace PROMOTE_PROTOTYPES
|
* ada/utils.c (create_param_decl): Replace PROMOTE_PROTOTYPES
|
with targetm.calls.promote_prototypes.
|
with targetm.calls.promote_prototypes.
|
|
|
2004-02-04 Robert Dewar
|
2004-02-04 Robert Dewar
|
|
|
* 5gtasinf.adb, 5gtasinf.ads, 5gtaprop.adb, ali.adb,
|
* 5gtasinf.adb, 5gtasinf.ads, 5gtaprop.adb, ali.adb,
|
ali.ads, gprcmd.adb: Minor reformatting
|
ali.ads, gprcmd.adb: Minor reformatting
|
|
|
* bindgen.adb: Output restrictions string for new style restrictions
|
* bindgen.adb: Output restrictions string for new style restrictions
|
handling
|
handling
|
|
|
* impunit.adb: Add s-rident.ads (System.Rident) and
|
* impunit.adb: Add s-rident.ads (System.Rident) and
|
s-restri (System.Restrictions)
|
s-restri (System.Restrictions)
|
|
|
* lib-writ.adb: Fix bug in writing restrictions string (last few
|
* lib-writ.adb: Fix bug in writing restrictions string (last few
|
entries wrong)
|
entries wrong)
|
|
|
* s-restri.ads, s-restri.adb: Change name Restrictions to
|
* s-restri.ads, s-restri.adb: Change name Restrictions to
|
Run_Time_Restrictions to avoid conflict with package name.
|
Run_Time_Restrictions to avoid conflict with package name.
|
Add circuit to read and acquire run time restrictions.
|
Add circuit to read and acquire run time restrictions.
|
|
|
2004-02-04 Jose Ruiz
|
2004-02-04 Jose Ruiz
|
|
|
* restrict.ads, restrict.adb: Use the new restriction
|
* restrict.ads, restrict.adb: Use the new restriction
|
No_Task_Attributes_Package instead of the old No_Task_Attributes.
|
No_Task_Attributes_Package instead of the old No_Task_Attributes.
|
|
|
* sem_prag.adb: No_Task_Attributes is a synonym of
|
* sem_prag.adb: No_Task_Attributes is a synonym of
|
No_Task_Attributes_Package.
|
No_Task_Attributes_Package.
|
|
|
* snames.ads, snames.adb: New entry for proper handling of
|
* snames.ads, snames.adb: New entry for proper handling of
|
No_Task_Attributes.
|
No_Task_Attributes.
|
|
|
* s-rident.ads: Adding restriction No_Task_Attributes_Package
|
* s-rident.ads: Adding restriction No_Task_Attributes_Package
|
(AI-00249) that supersedes the GNAT specific restriction
|
(AI-00249) that supersedes the GNAT specific restriction
|
No_Task_Attributes.
|
No_Task_Attributes.
|
|
|
2004-02-04 Ed Schonberg
|
2004-02-04 Ed Schonberg
|
|
|
* sem_prag.adb:
|
* sem_prag.adb:
|
(Analyze_Pragma, case Warnings): In an inlined body, as in an instance
|
(Analyze_Pragma, case Warnings): In an inlined body, as in an instance
|
body, an identifier may be wrapped in an unchecked conversion.
|
body, an identifier may be wrapped in an unchecked conversion.
|
|
|
2004-02-04 Vincent Celier
|
2004-02-04 Vincent Celier
|
|
|
* lib-writ.ads: Comment update for the W lines
|
* lib-writ.ads: Comment update for the W lines
|
|
|
* bld.adb: (Expression): An empty string list is static
|
* bld.adb: (Expression): An empty string list is static
|
|
|
* fname-uf.adb: Minor comment update
|
* fname-uf.adb: Minor comment update
|
|
|
* fname-uf.ads: (Get_File_Name): Document new parameter May_Fail
|
* fname-uf.ads: (Get_File_Name): Document new parameter May_Fail
|
|
|
* gnatbind.adb: Initialize Cumulative_Restrictions with the
|
* gnatbind.adb: Initialize Cumulative_Restrictions with the
|
restrictions on the target.
|
restrictions on the target.
|
|
|
2004-02-03 Kazu Hirata
|
2004-02-03 Kazu Hirata
|
|
|
* ada/trans.c (gigi): Use gen_rtx_SYMBOL_REF instead of
|
* ada/trans.c (gigi): Use gen_rtx_SYMBOL_REF instead of
|
gen_rtx.
|
gen_rtx.
|
|
|
2004-02-02 Arnaud Charlet
|
2004-02-02 Arnaud Charlet
|
|
|
* Makefile.in: Remove setting of THREADSLIB on mips o32, unneeded.
|
* Makefile.in: Remove setting of THREADSLIB on mips o32, unneeded.
|
|
|
2004-02-02 Vincent Celier
|
2004-02-02 Vincent Celier
|
|
|
* gprcmd.adb (Check_Args): If condition is false, print the invoked
|
* gprcmd.adb (Check_Args): If condition is false, print the invoked
|
comment before the usage.
|
comment before the usage.
|
Gprcmd: Fail when command is not recognized.
|
Gprcmd: Fail when command is not recognized.
|
(Usage): Document command "prefix"
|
(Usage): Document command "prefix"
|
|
|
* g-md5.adb (Digest): Process last block.
|
* g-md5.adb (Digest): Process last block.
|
(Update): Do not process last block. Store remaining characters and
|
(Update): Do not process last block. Store remaining characters and
|
length in Context.
|
length in Context.
|
|
|
* g-md5.ads (Update): Document that several call to update are
|
* g-md5.ads (Update): Document that several call to update are
|
equivalent to one call with the concatenated string.
|
equivalent to one call with the concatenated string.
|
(Context): Add fields to allow new Update behaviour.
|
(Context): Add fields to allow new Update behaviour.
|
|
|
* fname-uf.ads/adb (Get_File_Name): New Boolean parameter May_Fail,
|
* fname-uf.ads/adb (Get_File_Name): New Boolean parameter May_Fail,
|
defaulted to False.
|
defaulted to False.
|
When May_Fail is True and no existing file can be found, return No_File.
|
When May_Fail is True and no existing file can be found, return No_File.
|
|
|
* 6vcstrea.adb: Inlined functions are now wrappers to implementation
|
* 6vcstrea.adb: Inlined functions are now wrappers to implementation
|
functions.
|
functions.
|
|
|
* lib-writ.adb (Write_With_Lines): When body file does not exist, use
|
* lib-writ.adb (Write_With_Lines): When body file does not exist, use
|
spec file name instead on the W line.
|
spec file name instead on the W line.
|
|
|
2004-02-02 Robert Dewar
|
2004-02-02 Robert Dewar
|
|
|
* ali.adb: Read and acquire info from new format restrictions lines
|
* ali.adb: Read and acquire info from new format restrictions lines
|
|
|
* bcheck.adb: Add circuits for checking restrictions with parameters
|
* bcheck.adb: Add circuits for checking restrictions with parameters
|
|
|
* bindgen.adb: Output dummy restrictions data
|
* bindgen.adb: Output dummy restrictions data
|
To be changed later
|
To be changed later
|
|
|
* ali.ads, checks.adb, exp_aggr.adb, exp_attr.adb, exp_ch11.adb,
|
* 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,
|
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,
|
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_ch12.adb, targparm.adb, targparm.ads, tbuild.adb, sem_ch2.adb,
|
sem_elab.adb, sem_res.adb: Minor changes for new restrictions handling.
|
sem_elab.adb, sem_res.adb: Minor changes for new restrictions handling.
|
|
|
* exp_ch9.adb (Build_Master_Entity): Cleanup the code (also suppresses
|
* exp_ch9.adb (Build_Master_Entity): Cleanup the code (also suppresses
|
the warning message on access to possibly uninitialized variable S)
|
the warning message on access to possibly uninitialized variable S)
|
Minor changes for new restrictions handling.
|
Minor changes for new restrictions handling.
|
|
|
* gnatbind.adb: Minor reformatting
|
* gnatbind.adb: Minor reformatting
|
Minor changes for new restrictions handling
|
Minor changes for new restrictions handling
|
Move circuit for -r processing here from bcheck (cleaner)
|
Move circuit for -r processing here from bcheck (cleaner)
|
|
|
* gnatcmd.adb, gnatlink.adb: Minor reformatting
|
* gnatcmd.adb, gnatlink.adb: Minor reformatting
|
|
|
* lib-writ.adb: Output new format restrictions lines
|
* lib-writ.adb: Output new format restrictions lines
|
|
|
* lib-writ.ads: Document new R format lines for new restrictions
|
* lib-writ.ads: Document new R format lines for new restrictions
|
handling.
|
handling.
|
|
|
* s-restri.ads/adb: New files
|
* s-restri.ads/adb: New files
|
|
|
* Makefile.rtl: Add entry for s-restri.ads/adb
|
* Makefile.rtl: Add entry for s-restri.ads/adb
|
|
|
* par-ch3.adb: Fix bad error messages starting with upper case letter
|
* par-ch3.adb: Fix bad error messages starting with upper case letter
|
Minor reformatting
|
Minor reformatting
|
|
|
* restrict.adb: Major rewrite throughout for new restrictions handling
|
* restrict.adb: Major rewrite throughout for new restrictions handling
|
Major point is to handle restrictions with parameters
|
Major point is to handle restrictions with parameters
|
|
|
* restrict.ads: Major changes in interface to handle restrictions with
|
* restrict.ads: Major changes in interface to handle restrictions with
|
parameters. Also generally simplifies setting of restrictions.
|
parameters. Also generally simplifies setting of restrictions.
|
|
|
* snames.ads/adb: New entry for proper handling of No_Requeue
|
* snames.ads/adb: New entry for proper handling of No_Requeue
|
|
|
* sem_ch3.adb (Count_Tasks): New circuitry for implementing Max_Tasks
|
* sem_ch3.adb (Count_Tasks): New circuitry for implementing Max_Tasks
|
restriction counting.
|
restriction counting.
|
Other minor changes for new restrictions handling
|
Other minor changes for new restrictions handling
|
|
|
* sem_prag.adb: No_Requeue is a synonym for No_Requeue_Statements.
|
* sem_prag.adb: No_Requeue is a synonym for No_Requeue_Statements.
|
Restriction_Warnings now allows full parameter notation
|
Restriction_Warnings now allows full parameter notation
|
Major rewrite of Restrictions for new restrictions handling
|
Major rewrite of Restrictions for new restrictions handling
|
|
|
2004-02-02 Javier Miranda
|
2004-02-02 Javier Miranda
|
|
|
* par-ch3.adb (P_Identifier_Declarations): Give support to the Ada 0Y
|
* par-ch3.adb (P_Identifier_Declarations): Give support to the Ada 0Y
|
syntax rule for object renaming declarations.
|
syntax rule for object renaming declarations.
|
(P_Array_Type_Definition): Give support for the Ada 0Y syntax rule for
|
(P_Array_Type_Definition): Give support for the Ada 0Y syntax rule for
|
component definitions.
|
component definitions.
|
|
|
* sem_ch3.adb (Analyze_Component_Declaration): Give support to access
|
* sem_ch3.adb (Analyze_Component_Declaration): Give support to access
|
components.
|
components.
|
(Array_Type_Declaration): Give support to access components. In addition
|
(Array_Type_Declaration): Give support to access components. In addition
|
it was also modified to reflect the name of the object in anonymous
|
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
|
array types. The old code did not take into account that it is possible
|
to have an unconstrained anonymous array with an initial value.
|
to have an unconstrained anonymous array with an initial value.
|
(Check_Or_Process_Discriminants): Allow access discriminant in
|
(Check_Or_Process_Discriminants): Allow access discriminant in
|
non-limited types.
|
non-limited types.
|
(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
|
Initialize the new Access_Definition field in N_Object_Renaming_Decl
|
node. Change Ada0Y to Ada 0Y in comments
|
node. Change Ada0Y to Ada 0Y in comments
|
|
|
* sem_ch4.adb (Find_Equality_Types): Allow anonymous access types in
|
* sem_ch4.adb (Find_Equality_Types): Allow anonymous access types in
|
equality operators.
|
equality operators.
|
Change Ada0Y to Ada 0Y in comments
|
Change Ada0Y to Ada 0Y in comments
|
|
|
* sem_ch8.adb (Analyze_Object_Renaming): Give support to access
|
* sem_ch8.adb (Analyze_Object_Renaming): Give support to access
|
renamings Change Ada0Y to Ada 0Y in comments
|
renamings Change Ada0Y to Ada 0Y in comments
|
|
|
* sem_type.adb (Find_Unique_Type): Give support to the equality
|
* sem_type.adb (Find_Unique_Type): Give support to the equality
|
operators for universal access types
|
operators for universal access types
|
Change Ada0Y to Ada 0Y in comments
|
Change Ada0Y to Ada 0Y in comments
|
|
|
* sinfo.adb (Access_Definition, Set_Access_Definition): New subprograms
|
* sinfo.adb (Access_Definition, Set_Access_Definition): New subprograms
|
|
|
* sinfo.ads (N_Component_Definition): Addition of Access_Definition
|
* sinfo.ads (N_Component_Definition): Addition of Access_Definition
|
field.
|
field.
|
(N_Object_Renaming_Declaration): Addition of Access_Definition field
|
(N_Object_Renaming_Declaration): Addition of Access_Definition field
|
Change Ada0Y to Ada 0Y in comments
|
Change Ada0Y to Ada 0Y in comments
|
|
|
* sprint.adb (Sprint_Node_Actual): Give support to the new syntax for
|
* sprint.adb (Sprint_Node_Actual): Give support to the new syntax for
|
component definition and object renaming nodes
|
component definition and object renaming nodes
|
Change Ada0Y to Ada 0Y in comments
|
Change Ada0Y to Ada 0Y in comments
|
|
|
2004-02-02 Jose Ruiz
|
2004-02-02 Jose Ruiz
|
|
|
* restrict.adb: Use the new restriction identifier
|
* restrict.adb: Use the new restriction identifier
|
No_Requeue_Statements instead of the old No_Requeue for defining the
|
No_Requeue_Statements instead of the old No_Requeue for defining the
|
restricted profile.
|
restricted profile.
|
|
|
* sem_ch9.adb (Analyze_Requeue): Check the new restriction
|
* sem_ch9.adb (Analyze_Requeue): Check the new restriction
|
No_Requeue_Statements.
|
No_Requeue_Statements.
|
|
|
* s-rident.ads: Adding restriction No_Requeue_Statements (AI-00249)
|
* s-rident.ads: Adding restriction No_Requeue_Statements (AI-00249)
|
that supersedes the GNAT specific restriction No_Requeue. The later is
|
that supersedes the GNAT specific restriction No_Requeue. The later is
|
kept for backward compatibility.
|
kept for backward compatibility.
|
|
|
2004-02-02 Ed Schonberg
|
2004-02-02 Ed Schonberg
|
|
|
* lib.ads, i-cobol.ads, * s-stoele.ads, s-thread.ads, style.ads,
|
* lib.ads, i-cobol.ads, * s-stoele.ads, s-thread.ads, style.ads,
|
5staprop.adb, atree.adb, atree.ads, g-crc32.ads: Remove redundant
|
5staprop.adb, atree.adb, atree.ads, g-crc32.ads: Remove redundant
|
pragma and fix incorrect ones.
|
pragma and fix incorrect ones.
|
|
|
* sem_prag.adb For pragma Inline and pragma Pure_Function, emit a
|
* sem_prag.adb For pragma Inline and pragma Pure_Function, emit a
|
warning if the pragma is redundant.
|
warning if the pragma is redundant.
|
|
|
2004-02-02 Thomas Quinot
|
2004-02-02 Thomas Quinot
|
|
|
* 5staprop.adb: Add missing 'constant' keywords.
|
* 5staprop.adb: Add missing 'constant' keywords.
|
|
|
* Makefile.in: use consistent value for SYMLIB on
|
* Makefile.in: use consistent value for SYMLIB on
|
platforms where libaddr2line is supported.
|
platforms where libaddr2line is supported.
|
|
|
2004-02-02 Richard Kenner
|
2004-02-02 Richard Kenner
|
|
|
* utils.c (end_subprog_body): Do not call rest_of_compilation if just
|
* utils.c (end_subprog_body): Do not call rest_of_compilation if just
|
annotating types.
|
annotating types.
|
|
|
2004-02-02 Olivier Hainque
|
2004-02-02 Olivier Hainque
|
|
|
* init.c (__gnat_install_handler): Setup an alternate stack for signal
|
* init.c (__gnat_install_handler): Setup an alternate stack for signal
|
handlers in the environment thread. This allows proper propagation of
|
handlers in the environment thread. This allows proper propagation of
|
an exception on stack overflows in this thread even when the builtin
|
an exception on stack overflows in this thread even when the builtin
|
ABI stack-checking scheme is used without support for a stack reserve
|
ABI stack-checking scheme is used without support for a stack reserve
|
region.
|
region.
|
|
|
* utils.c (create_field_decl): Augment the head comment about bitfield
|
* utils.c (create_field_decl): Augment the head comment about bitfield
|
creation, and don't account for DECL_BIT_FIELD in DECL_NONADDRESSABLE_P
|
creation, and don't account for DECL_BIT_FIELD in DECL_NONADDRESSABLE_P
|
here, because the former is not accurate enough at this point.
|
here, because the former is not accurate enough at this point.
|
Let finish_record_type decide instead.
|
Let finish_record_type decide instead.
|
Don't make a bitfield if the field is to be addressable.
|
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
|
Always set a size for the field if the record is packed, to ensure the
|
checks for bitfield creation are triggered.
|
checks for bitfield creation are triggered.
|
(finish_record_type): During last pass over the fields, clear
|
(finish_record_type): During last pass over the fields, clear
|
DECL_BIT_FIELD when possible in the !STRICT_ALIGNMENT case, as this is
|
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
|
not covered by the calls to layout_decl. Adjust DECL_NONADDRESSABLE_P
|
from DECL_BIT_FIELD.
|
from DECL_BIT_FIELD.
|
|
|
2004-01-30 Kelley Cook
|
2004-01-30 Kelley Cook
|
|
|
* Make-lang.in (doc/gnat_ug_unx.dvi): Use $(abs_docdir).
|
* 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_vms.dvi, doc/gnat_ug_unx.dvi): Likewise.
|
(doc/gnat_ug_unx.dvi, doc/gnat-style.dvi): Likewise.
|
(doc/gnat_ug_unx.dvi, doc/gnat-style.dvi): Likewise.
|
|
|
2004-01-26 Rainer Orth
|
2004-01-26 Rainer Orth
|
|
|
* Makefile.in (mips-sgi-irix5): Remove -lathread from THREADSLIB.
|
* Makefile.in (mips-sgi-irix5): Remove -lathread from THREADSLIB.
|
|
|
* 5fsystem.ads (Functions_Return_By_DSP): Set to False.
|
* 5fsystem.ads (Functions_Return_By_DSP): Set to False.
|
(ZCX_By_Default): Likewise.
|
(ZCX_By_Default): Likewise.
|
(Front_End_ZCX_Support): Likewise.
|
(Front_End_ZCX_Support): Likewise.
|
|
|
* 5gtaprop.adb (Stack_Guard): Mark T, On unreferenced.
|
* 5gtaprop.adb (Stack_Guard): Mark T, On unreferenced.
|
(Initialize_Lock): Mark Level unreferenced.
|
(Initialize_Lock): Mark Level unreferenced.
|
(Sleep): Mark Reason unreferenced.
|
(Sleep): Mark Reason unreferenced.
|
(Timed_Sleep): Likewise.
|
(Timed_Sleep): Likewise.
|
(Wakeup): Likewise.
|
(Wakeup): Likewise.
|
(Exit_Task): Use Result.
|
(Exit_Task): Use Result.
|
(Check_No_Locks): Mark Self_ID unreferenced.
|
(Check_No_Locks): Mark Self_ID unreferenced.
|
|
|
* 5gtasinf.adb (New_Sproc): Make Attr constant.
|
* 5gtasinf.adb (New_Sproc): Make Attr constant.
|
(Bound_Thread_Attributes): Make Sproc constant.
|
(Bound_Thread_Attributes): Make Sproc constant.
|
(New_Bound_Thread_Attributes): Likewise.
|
(New_Bound_Thread_Attributes): Likewise.
|
|
|
2004-01-26 Ed Schonberg
|
2004-01-26 Ed Schonberg
|
|
|
* exp_ch3.adb (Build_Slice_Assignment): New TSS procedure for
|
* exp_ch3.adb (Build_Slice_Assignment): New TSS procedure for
|
one-dimensional array an slice assignments, when component type is
|
one-dimensional array an slice assignments, when component type is
|
controlled.
|
controlled.
|
|
|
* exp_ch5.adb (Expand_Assign_Array): If array is one-dimensional,
|
* exp_ch5.adb (Expand_Assign_Array): If array is one-dimensional,
|
component type is controlled, and control_actions are in effect, use
|
component type is controlled, and control_actions are in effect, use
|
TSS procedure rather than generating inline code.
|
TSS procedure rather than generating inline code.
|
|
|
* exp_tss.ads (TSS_Slice_Assign): New TSS procedure for one-dimensional
|
* exp_tss.ads (TSS_Slice_Assign): New TSS procedure for one-dimensional
|
arrays with controlled components.
|
arrays with controlled components.
|
|
|
2004-01-26 Vincent Celier
|
2004-01-26 Vincent Celier
|
|
|
* gnatcmd.adb (GNATCmd): Add specification of argument file on the
|
* gnatcmd.adb (GNATCmd): Add specification of argument file on the
|
command line for the non VMS case.
|
command line for the non VMS case.
|
|
|
* gnatlink.adb (Process_Binder_File): When building object file, if
|
* gnatlink.adb (Process_Binder_File): When building object file, if
|
GNU linker is used, put all object paths between quotes, to prevent ld
|
GNU linker is used, put all object paths between quotes, to prevent ld
|
error when there are unusual characters (such as '!') in the paths.
|
error when there are unusual characters (such as '!') in the paths.
|
|
|
* Makefile.generic: When there are sources in Ada and the main is in
|
* Makefile.generic: When there are sources in Ada and the main is in
|
C/C++, invoke gnatmake with -B, instead of -z.
|
C/C++, invoke gnatmake with -B, instead of -z.
|
|
|
* vms_conv.adb (Preprocess_Command_Data): New procedure, extracted
|
* vms_conv.adb (Preprocess_Command_Data): New procedure, extracted
|
from VMS_Conversion.
|
from VMS_Conversion.
|
(Process_Argument): New procedure, extracted from VMS_Conversion. Add
|
(Process_Argument): New procedure, extracted from VMS_Conversion. Add
|
specification of argument file on the command line.
|
specification of argument file on the command line.
|
|
|
2004-01-26 Bernard Banner
|
2004-01-26 Bernard Banner
|
|
|
* Makefile.in: Enable GMEM_LIB and SYMLIB for x86_64
|
* Makefile.in: Enable GMEM_LIB and SYMLIB for x86_64
|
|
|
2004-01-26 Ed Schonberg
|
2004-01-26 Ed Schonberg
|
|
|
* snames.adb: Update copyright notice.
|
* snames.adb: Update copyright notice.
|
Add info on slice assignment for controlled arrays.
|
Add info on slice assignment for controlled arrays.
|
|
|
2004-01-23 Robert Dewar
|
2004-01-23 Robert Dewar
|
|
|
* exp_aggr.adb: Minor reformatting
|
* exp_aggr.adb: Minor reformatting
|
|
|
* exp_ch9.adb: Minor code clean up
|
* exp_ch9.adb: Minor code clean up
|
Minor reformatting
|
Minor reformatting
|
Fix bad character in comment
|
Fix bad character in comment
|
|
|
PR ada/13471
|
PR ada/13471
|
* targparm.adb (Get_Target_Parameters): Give clean abort error on
|
* targparm.adb (Get_Target_Parameters): Give clean abort error on
|
unexpected end of file, along with more detailed message.
|
unexpected end of file, along with more detailed message.
|
|
|
2004-01-23 Richard Kenner
|
2004-01-23 Richard Kenner
|
|
|
* exp_pakd.adb (Install_PAT): Clear Freeze_Node for PAT and Etype of
|
* exp_pakd.adb (Install_PAT): Clear Freeze_Node for PAT and Etype of
|
PAT.
|
PAT.
|
|
|
* decl.c (copy_alias_set): New function.
|
* decl.c (copy_alias_set): New function.
|
(gnat_to_gnu_entity, make_aligning_type, make_packable_type): Use it.
|
(gnat_to_gnu_entity, make_aligning_type, make_packable_type): Use it.
|
|
|
2004-01-23 Doug Rupp
|
2004-01-23 Doug Rupp
|
|
|
* Makefile.in (install-gnatlib): Change occurrences of lib$$file to
|
* Makefile.in (install-gnatlib): Change occurrences of lib$$file to
|
lib$${file} in case subsequent character is not a separator.
|
lib$${file} in case subsequent character is not a separator.
|
|
|
2004-01-23 Vincent Celier
|
2004-01-23 Vincent Celier
|
|
|
* 5vml-tgt.adb (Build_Dynamic_Library): Invoke gcc with -shared-libgcc
|
* 5vml-tgt.adb (Build_Dynamic_Library): Invoke gcc with -shared-libgcc
|
when the GCC version is at least 3.
|
when the GCC version is at least 3.
|
|
|
* make.adb: (Scan_Make_Arg): Pass -B to Scan_Make_Switches
|
* make.adb: (Scan_Make_Arg): Pass -B to Scan_Make_Switches
|
Remove all "Opt.", to prepare for opt split
|
Remove all "Opt.", to prepare for opt split
|
|
|
* prj-part.adb (Parse_Single_Project): New Boolean out parameter
|
* prj-part.adb (Parse_Single_Project): New Boolean out parameter
|
Extends_All. Set to True when the project parsed is an extending all
|
Extends_All. Set to True when the project parsed is an extending all
|
project. Fails for importing an extending all project only when the
|
project. Fails for importing an extending all project only when the
|
imported project is an extending all project.
|
imported project is an extending all project.
|
(Post_Parse_Context_Clause): Set Is_Extending_All to the with clause,
|
(Post_Parse_Context_Clause): Set Is_Extending_All to the with clause,
|
depending on the value of Extends_All returned.
|
depending on the value of Extends_All returned.
|
|
|
* prj-proc.adb (Process): Check that no project shares its object
|
* prj-proc.adb (Process): Check that no project shares its object
|
directory with a project that extends it, directly or indirectly,
|
directory with a project that extends it, directly or indirectly,
|
including a virtual project.
|
including a virtual project.
|
Check that no project extended by another project shares its object
|
Check that no project extended by another project shares its object
|
directory with another also extended project.
|
directory with another also extended project.
|
|
|
* prj-tree.adb (Is_Extending_All, Set_Is_Extending_All): Allow for
|
* prj-tree.adb (Is_Extending_All, Set_Is_Extending_All): Allow for
|
Kind = N_With_Clause
|
Kind = N_With_Clause
|
|
|
* prj-tree.ads: Minor reformatting
|
* prj-tree.ads: Minor reformatting
|
Indicate that Flag2 also applies to N_With_Clause (Is_Extending_All).
|
Indicate that Flag2 also applies to N_With_Clause (Is_Extending_All).
|
|
|
2004-01-23 Ed Schonberg
|
2004-01-23 Ed Schonberg
|
|
|
* sem_ch13.adb (Analyze_Attribute_Definition_Clause): If the attribute
|
* sem_ch13.adb (Analyze_Attribute_Definition_Clause): If the attribute
|
applies to a type with an incomplete view, use full view in Name of
|
applies to a type with an incomplete view, use full view in Name of
|
clause, for consistency with uses of Get_Attribute_Definition_Clause.
|
clause, for consistency with uses of Get_Attribute_Definition_Clause.
|
|
|
2004-01-23 Arnaud Charlet
|
2004-01-23 Arnaud Charlet
|
|
|
* 5itaprop.adb (Set_Priority): Reset the priority to 0 when using
|
* 5itaprop.adb (Set_Priority): Reset the priority to 0 when using
|
SCHED_RR, since other values are not supported by this policy.
|
SCHED_RR, since other values are not supported by this policy.
|
(Initialize): Move initialization of mutex attribute to package
|
(Initialize): Move initialization of mutex attribute to package
|
elaboration, to prevent early access to this variable.
|
elaboration, to prevent early access to this variable.
|
|
|
* Makefile.in: Remove mention of Makefile.adalib, unused.
|
* Makefile.in: Remove mention of Makefile.adalib, unused.
|
|
|
* Makefile.adalib, 1aexcept.adb, 1aexcept.ads, 1ic.ads, 1ssecsta.adb,
|
* Makefile.adalib, 1aexcept.adb, 1aexcept.ads, 1ic.ads, 1ssecsta.adb,
|
1ssecsta.ads: Removed, unused.
|
1ssecsta.ads: Removed, unused.
|
|
|
2004-01-21 Javier Miranda
|
2004-01-21 Javier Miranda
|
|
|
* exp_aggr.adb (Build_Record_Aggr_Code): Do not build the master
|
* exp_aggr.adb (Build_Record_Aggr_Code): Do not build the master
|
entity if already built in the current scope.
|
entity if already built in the current scope.
|
|
|
* exp_ch9.adb (Build_Master_Entity): Do not set the has_master_entity
|
* exp_ch9.adb (Build_Master_Entity): Do not set the has_master_entity
|
reminder in internal scopes. Required for nested limited aggregates.
|
reminder in internal scopes. Required for nested limited aggregates.
|
|
|
2004-01-21 Doug Rupp
|
2004-01-21 Doug Rupp
|
|
|
* Makefile.in (hyphen): New variable, default value '-'. Set to '_' on
|
* Makefile.in (hyphen): New variable, default value '-'. Set to '_' on
|
VMS. Replace all occurences of libgnat- and libgnarl- with
|
VMS. Replace all occurences of libgnat- and libgnarl- with
|
libgnat$(hyphen) and libgnarl$(hyphen).
|
libgnat$(hyphen) and libgnarl$(hyphen).
|
Fixed shared library build problem on VMS.
|
Fixed shared library build problem on VMS.
|
|
|
2004-01-21 Robert Dewar
|
2004-01-21 Robert Dewar
|
|
|
* mlib-prj.adb: Minor reformatting
|
* mlib-prj.adb: Minor reformatting
|
|
|
2004-01-21 Thomas Quinot
|
2004-01-21 Thomas Quinot
|
|
|
* prj-tree.adb, 7staprop.adb, vms_conv.adb, xr_tabls.adb: Add missing
|
* prj-tree.adb, 7staprop.adb, vms_conv.adb, xr_tabls.adb: Add missing
|
'constant' keywords for declaration of pointers that are not modified.
|
'constant' keywords for declaration of pointers that are not modified.
|
|
|
* exp_pakd.adb: Fix English in comment.
|
* exp_pakd.adb: Fix English in comment.
|
|
|
2004-01-21 Ed Schonberg
|
2004-01-21 Ed Schonberg
|
|
|
PR ada/10889
|
PR ada/10889
|
* sem_ch3.adb (Analyze_Subtype_Declaration): For an array subtype,
|
* sem_ch3.adb (Analyze_Subtype_Declaration): For an array subtype,
|
copy all attributes of the parent, including the foreign language
|
copy all attributes of the parent, including the foreign language
|
convention.
|
convention.
|
|
|
2004-01-21 Sergey Rybin
|
2004-01-21 Sergey Rybin
|
|
|
PR ada/10565
|
PR ada/10565
|
* sem_ch9.adb (Analyze_Delay_Alternative): Add expression type check
|
* sem_ch9.adb (Analyze_Delay_Alternative): Add expression type check
|
for 'delay until' statement.
|
for 'delay until' statement.
|
|
|
2004-01-20 Kelley Cook
|
2004-01-20 Kelley Cook
|
|
|
* Make-lang.in: Replace $(docdir) with doc.
|
* 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_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
|
doc/gnat_ug_wnt.info, doc/gnat_rm.info, doc/gnat-style.info): Update
|
to use consistent MAKEINFO rule.
|
to use consistent MAKEINFO rule.
|
(ada.man, ada.srcman): Dummy entry.
|
(ada.man, ada.srcman): Dummy entry.
|
(ADA_INFOFILES): Define.
|
(ADA_INFOFILES): Define.
|
(ada.info, ada.srcinfo): New rules.
|
(ada.info, ada.srcinfo): New rules.
|
|
|
2004-01-19 Arnaud Charlet
|
2004-01-19 Arnaud Charlet
|
|
|
* utils.c: Update copyright notice, missed in previous change.
|
* utils.c: Update copyright notice, missed in previous change.
|
|
|
2004-01-19 Vincent Celier
|
2004-01-19 Vincent Celier
|
|
|
* mlib-prj.adb (Build_Library.Add_ALI_For): Only add the ALI to the
|
* 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.
|
args if Bind is True. Set First_ALI, if not already done.
|
(Build_Library): For Stand Alone Libraries, extract from one ALI file
|
(Build_Library): For Stand Alone Libraries, extract from one ALI file
|
an eventual --RTS switch, for gnatbind, and all backend switches +
|
an eventual --RTS switch, for gnatbind, and all backend switches +
|
--RTS, for linking.
|
--RTS, for linking.
|
|
|
2004-01-19 Robert Dewar
|
2004-01-19 Robert Dewar
|
|
|
* sem_attr.adb, memtrack.adb: Minor reformatting
|
* sem_attr.adb, memtrack.adb: Minor reformatting
|
|
|
2004-01-19 Ed Schonberg
|
2004-01-19 Ed Schonberg
|
|
|
* exp_ch6.adb (Expand_Call): Remove code to fold calls to functions
|
* exp_ch6.adb (Expand_Call): Remove code to fold calls to functions
|
that rename enumeration literals. This is properly done in sem_eval.
|
that rename enumeration literals. This is properly done in sem_eval.
|
|
|
* sem_eval.ads, sem_eval.adb (Eval_Call): New procedure to fold calls
|
* sem_eval.ads, sem_eval.adb (Eval_Call): New procedure to fold calls
|
to functions that rename enumeration literals.
|
to functions that rename enumeration literals.
|
|
|
* sem_res.adb (Resolve_Call): Use Eval_Call to fold static calls to
|
* sem_res.adb (Resolve_Call): Use Eval_Call to fold static calls to
|
functions that rename enumeration literals.
|
functions that rename enumeration literals.
|
|
|
2004-01-16 Kazu Hirata
|
2004-01-16 Kazu Hirata
|
|
|
* Make-lang.in (utils.o): Depend on target.h.
|
* Make-lang.in (utils.o): Depend on target.h.
|
* utils.c: Include target.h.
|
* utils.c: Include target.h.
|
(process_attributes): Use targetm.have_named_sections instead
|
(process_attributes): Use targetm.have_named_sections instead
|
of ASM_OUTPUT_SECTION_NAME.
|
of ASM_OUTPUT_SECTION_NAME.
|
|
|
2004-01-16 Andreas Jaeger
|
2004-01-16 Andreas Jaeger
|
|
|
* Makefile.in: Add $(DESTDIR).
|
* Makefile.in: Add $(DESTDIR).
|
|
|
2004-01-15 Olivier Hainque
|
2004-01-15 Olivier Hainque
|
|
|
* decl.c (gnat_to_gnu_entity, E_Variable): Retrieve the object size
|
* decl.c (gnat_to_gnu_entity, E_Variable): Retrieve the object size
|
also when not defining if a Size clause applies. That information is
|
also when not defining if a Size clause applies. That information is
|
not to be ignored.
|
not to be ignored.
|
|
|
2004-01-15 Arnaud Charlet
|
2004-01-15 Arnaud Charlet
|
|
|
* Makefile.in (install-gnatlib, gnatlib-shared-default): Set up
|
* Makefile.in (install-gnatlib, gnatlib-shared-default): Set up
|
symbolic links for the shared gnat run time when needed.
|
symbolic links for the shared gnat run time when needed.
|
|
|
2004-01-15 Vasiliy Fofanov
|
2004-01-15 Vasiliy Fofanov
|
|
|
* memtrack.adb (Gmem_Initialize): check that gmem.out could be opened
|
* memtrack.adb (Gmem_Initialize): check that gmem.out could be opened
|
for writing, and terminate with an error message if not.
|
for writing, and terminate with an error message if not.
|
|
|
2004-01-15 Ed Schonberg
|
2004-01-15 Ed Schonberg
|
|
|
* sem_attr.adb (Resolve_Attribute, case 'Access): Remove spurious
|
* sem_attr.adb (Resolve_Attribute, case 'Access): Remove spurious
|
warning on an access to subprogram in an instance, when the target
|
warning on an access to subprogram in an instance, when the target
|
type is declared in the same generic unit.
|
type is declared in the same generic unit.
|
(Eval_Attribute): If 'access is known to fail accessibility check,
|
(Eval_Attribute): If 'access is known to fail accessibility check,
|
rewrite as a raise statement.
|
rewrite as a raise statement.
|
|
|
2004-01-15 GNAT Script
|
2004-01-15 GNAT Script
|
|
|
* Make-lang.in: Makefile automatically updated
|
* Make-lang.in: Makefile automatically updated
|
|
|
2004-01-15 Kelley Cook
|
2004-01-15 Kelley Cook
|
|
|
* Make-lang.in (ada.srcextra): Dummy entry.
|
* Make-lang.in (ada.srcextra): Dummy entry.
|
|
|
2004-01-14 Kelley Cook
|
2004-01-14 Kelley Cook
|
|
|
* Make-lang.in: Only regenerate texi files if --enable-maintainer-mode.
|
* Make-lang.in: Only regenerate texi files if --enable-maintainer-mode.
|
|
|
2004-01-13 Ed Schonberg
|
2004-01-13 Ed Schonberg
|
|
|
* exp_ch3.adb (Build_Assignment): Fix bug in handling of controlled
|
* exp_ch3.adb (Build_Assignment): Fix bug in handling of controlled
|
components that are initialized with aggregates.
|
components that are initialized with aggregates.
|
|
|
2004-01-13 Vincent Celier
|
2004-01-13 Vincent Celier
|
|
|
* gnatlink.adb (Process_Binder_File): To find directory of shared
|
* gnatlink.adb (Process_Binder_File): To find directory of shared
|
libgcc, if "gcc-lib" is not a subdirectory, look for the last
|
libgcc, if "gcc-lib" is not a subdirectory, look for the last
|
subdirectory "lib" in the path of the shared libgnat or libgnarl.
|
subdirectory "lib" in the path of the shared libgnat or libgnarl.
|
|
|
* make.adb (Gnatmake): If GCC version is at least 3, link with
|
* make.adb (Gnatmake): If GCC version is at least 3, link with
|
-shared-libgcc, when there is at least one shared library project.
|
-shared-libgcc, when there is at least one shared library project.
|
|
|
* opt.ads (GCC_Version): New integer constant.
|
* opt.ads (GCC_Version): New integer constant.
|
|
|
* adaint.c (get_gcc_version): New function.
|
* adaint.c (get_gcc_version): New function.
|
|
|
2004-01-13 Robert Dewar
|
2004-01-13 Robert Dewar
|
|
|
* sem_dist.adb, sem_res.adb, sem_util.adb,
|
* sem_dist.adb, sem_res.adb, sem_util.adb,
|
sprint.adb, 3zsocthi.adb, einfo.adb, cstand.adb,
|
sprint.adb, 3zsocthi.adb, einfo.adb, cstand.adb,
|
exp_ch4.adb, exp_ch9.adb, exp_dist.adb: Minor reformatting
|
exp_ch4.adb, exp_ch9.adb, exp_dist.adb: Minor reformatting
|
|
|
2004-01-13 Thomas Quinot
|
2004-01-13 Thomas Quinot
|
|
|
* s-interr.adb, s-stache.adb, s-taenca.adb, g-regpat.adb,
|
* s-interr.adb, s-stache.adb, s-taenca.adb, g-regpat.adb,
|
g-spitbo.adb, 5itaprop.adb: Add missing 'constant' keywords in object
|
g-spitbo.adb, 5itaprop.adb: Add missing 'constant' keywords in object
|
declarations.
|
declarations.
|
|
|
2004-01-12 Arnaud Charlet
|
2004-01-12 Arnaud Charlet
|
|
|
* misc.c: Remove trailing spaces.
|
* misc.c: Remove trailing spaces.
|
Update copyright notice missed in previous change.
|
Update copyright notice missed in previous change.
|
|
|
PR ada/13572
|
PR ada/13572
|
* bld.adb (Recursive_Process): Reference prefix/share/gnat instead of
|
* bld.adb (Recursive_Process): Reference prefix/share/gnat instead of
|
prefix/share/make
|
prefix/share/make
|
|
|
* Makefile.generic: Update copyright.
|
* Makefile.generic: Update copyright.
|
Add license notice.
|
Add license notice.
|
|
|
* Makefile.in (ADA_SHARE_MAKE_DIR): Set to prefix/share/gnat instead
|
* Makefile.in (ADA_SHARE_MAKE_DIR): Set to prefix/share/gnat instead
|
of prefix/share/make.
|
of prefix/share/make.
|
|
|
* Makefile.prolog: Update copyright.
|
* Makefile.prolog: Update copyright.
|
Add license notice.
|
Add license notice.
|
|
|
2004-01-12 Laurent Pautet
|
2004-01-12 Laurent Pautet
|
|
|
* 3vsocthi.adb, 3vsocthi.ads, 3wsocthi.adb,
|
* 3vsocthi.adb, 3vsocthi.ads, 3wsocthi.adb,
|
3wsocthi.ads, 3zsocthi.adb, 3zsocthi.ads, g-socthi.adb,
|
3wsocthi.ads, 3zsocthi.adb, 3zsocthi.ads, g-socthi.adb,
|
g-socthi.ads (Socket_Error_Message): Return C.Strings.chars_ptr
|
g-socthi.ads (Socket_Error_Message): Return C.Strings.chars_ptr
|
instead of String.
|
instead of String.
|
|
|
* g-socket.adb (Raise_Socket_Error): Use new Socket_Error_Message
|
* g-socket.adb (Raise_Socket_Error): Use new Socket_Error_Message
|
signature.
|
signature.
|
|
|
2004-01-12 Javier Miranda
|
2004-01-12 Javier Miranda
|
|
|
* cstand.adb, exp_aggr.adb, exp_ch3.adb, exp_ch9.adb, exp_dist.adb,
|
* 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,
|
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_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
|
sem_util.adb, sinfo.adb, sinfo.ads, sprint.adb: Addition of
|
Component_Definition node.
|
Component_Definition node.
|
|
|
2004-01-12 Ed Falis
|
2004-01-12 Ed Falis
|
|
|
* impunit.adb: Add GNAT.Secondary_Stack_Info as user-visible unit
|
* impunit.adb: Add GNAT.Secondary_Stack_Info as user-visible unit
|
|
|
2004-01-12 Thomas Quinot
|
2004-01-12 Thomas Quinot
|
|
|
* link.c: Change default libgnat kind to STATIC for FreeBSD.
|
* link.c: Change default libgnat kind to STATIC for FreeBSD.
|
|
|
2004-01-12 Bernard Banner
|
2004-01-12 Bernard Banner
|
|
|
* Makefile.in: map 86numaux to a-numaux for x86_64
|
* Makefile.in: map 86numaux to a-numaux for x86_64
|
|
|
2004-01-12 Ed Schonberg
|
2004-01-12 Ed Schonberg
|
|
|
* lib-xref.adb (Get_Type_Reference): If the type is the subtype entity
|
* 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
|
generated to rename a generic actual, go to the actual itself, the
|
subtype is not a user-visible entity.
|
subtype is not a user-visible entity.
|
|
|
* sem_ch7.adb (Uninstall_Declarations): If an entity in the visible
|
* sem_ch7.adb (Uninstall_Declarations): If an entity in the visible
|
part is a private subtype, reset the visibility of its full view, if
|
part is a private subtype, reset the visibility of its full view, if
|
any, to be consistent.
|
any, to be consistent.
|
|
|
PR ada/13417
|
PR ada/13417
|
* sem_ch12.adb (Analyze_Formal_Package): Diagnose properly an attempt
|
* sem_ch12.adb (Analyze_Formal_Package): Diagnose properly an attempt
|
to use a generic package G as a formal package for another generic
|
to use a generic package G as a formal package for another generic
|
declared within G.
|
declared within G.
|
|
|
2004-01-12 Robert Dewar
|
2004-01-12 Robert Dewar
|
|
|
* trans.c (Eliminate_Error_Msg): New procedure called to generate msg
|
* trans.c (Eliminate_Error_Msg): New procedure called to generate msg
|
|
|
* usage.adb: Remove mention of obsolete -gnatwb switch
|
* usage.adb: Remove mention of obsolete -gnatwb switch
|
Noticed during code reading
|
Noticed during code reading
|
|
|
2004-01-12 Jerome Guitton
|
2004-01-12 Jerome Guitton
|
|
|
* 1ssecsta.adb: Minor changes for -gnatwa warnings
|
* 1ssecsta.adb: Minor changes for -gnatwa warnings
|
|
|
2004-01-12 GNAT Script
|
2004-01-12 GNAT Script
|
|
|
* Make-lang.in: Makefile automatically updated
|
* Make-lang.in: Makefile automatically updated
|
|
|
2004-01-09 Mark Mitchell
|
2004-01-09 Mark Mitchell
|
|
|
* misc.c (gnat_expand_expr): Add alt_rtl parameter.
|
* misc.c (gnat_expand_expr): Add alt_rtl parameter.
|
|
|
2004-01-07 Rainer Orth
|
2004-01-07 Rainer Orth
|
|
|
* link.c [sgi] (shared_libgnat_default): Change to STATIC.
|
* link.c [sgi] (shared_libgnat_default): Change to STATIC.
|
|
|
2004-01-05 Kelley Cook
|
2004-01-05 Kelley Cook
|
|
|
* Make-lang.in: Revert stamp-xgnatug change from 2003-12-18.
|
* Make-lang.in: Revert stamp-xgnatug change from 2003-12-18.
|
Update comment and copyright date.
|
Update comment and copyright date.
|
* stamp-xgnatug: Delete.
|
* stamp-xgnatug: Delete.
|
|
|
2004-01-05 Robert Dewar
|
2004-01-05 Robert Dewar
|
|
|
* 1ssecsta.ads: Default_Secondary_Stack is not a constant since it may
|
* 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
|
be modified by the binder generated main program if the -D switch is
|
used.
|
used.
|
|
|
* 4onumaux.ads, 4znumaux.ads: Add Pure_Function pragmas for all
|
* 4onumaux.ads, 4znumaux.ads: Add Pure_Function pragmas for all
|
imported functions (since now we expect this to be done for imported
|
imported functions (since now we expect this to be done for imported
|
functions)
|
functions)
|
|
|
* 5vtaprop.adb: Add several ??? for sections requiring more comments
|
* 5vtaprop.adb: Add several ??? for sections requiring more comments
|
Minor reformatting throughout
|
Minor reformatting throughout
|
|
|
* 5zinit.adb: Minor reformatting
|
* 5zinit.adb: Minor reformatting
|
Add 2004 to copyright date
|
Add 2004 to copyright date
|
Minor changes to avoid -gnatwa warnings
|
Minor changes to avoid -gnatwa warnings
|
Correct some instances of using OR instead of OR ELSE (noted while
|
Correct some instances of using OR instead of OR ELSE (noted while
|
doing reformatting)
|
doing reformatting)
|
|
|
* sprint.adb: Minor updates to avoid -gnatwa warnings
|
* sprint.adb: Minor updates to avoid -gnatwa warnings
|
|
|
* s-secsta.ads, s-secsta.adb:
|
* s-secsta.ads, s-secsta.adb:
|
(SS_Get_Max): New function to obtain high water mark for ss stack
|
(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
|
Default_Secondary_Stack is not a constant since it may be modified by
|
the binder generated main program if the -D switch is used.
|
the binder generated main program if the -D switch is used.
|
|
|
* switch-b.adb: New -Dnnn switch for binder
|
* switch-b.adb: New -Dnnn switch for binder
|
|
|
* switch-c.adb:
|
* switch-c.adb:
|
Make -gnatg imply all warnings currently in -gnatwa
|
Make -gnatg imply all warnings currently in -gnatwa
|
|
|
* vms_conv.adb: Minor reformatting
|
* vms_conv.adb: Minor reformatting
|
Add 2004 to copyright notice
|
Add 2004 to copyright notice
|
Add 2004 to printed copyright notice
|
Add 2004 to printed copyright notice
|
|
|
* 3vexpect.adb, 4zsytaco.adb, 3wsocthi.adb, 3zsocthi.adb,
|
* 3vexpect.adb, 4zsytaco.adb, 3wsocthi.adb, 3zsocthi.adb,
|
3zsocthi.adb, 56taprop.adb, 56tpopsp.adb, 5amastop.adb,
|
3zsocthi.adb, 56taprop.adb, 56tpopsp.adb, 5amastop.adb,
|
5aml-tgt.adb, 5ataprop.adb, 5ataprop.adb, 5atpopsp.adb,
|
5aml-tgt.adb, 5ataprop.adb, 5ataprop.adb, 5atpopsp.adb,
|
5ftaprop.adb, 5ginterr.adb, 5gmastop.adb, 5gml-tgt.adb,
|
5ftaprop.adb, 5ginterr.adb, 5gmastop.adb, 5gml-tgt.adb,
|
5gtaprop.adb, 5hml-tgt.adb, 5hml-tgt.adb, 5hml-tgt.adb,
|
5gtaprop.adb, 5hml-tgt.adb, 5hml-tgt.adb, 5hml-tgt.adb,
|
5htaprop.adb, 5htraceb.adb, 5itaprop.adb, 5lml-tgt.adb,
|
5htaprop.adb, 5htraceb.adb, 5itaprop.adb, 5lml-tgt.adb,
|
5sml-tgt.adb, 5staprop.adb, 5staprop.adb, 5stpopsp.adb,
|
5sml-tgt.adb, 5staprop.adb, 5staprop.adb, 5stpopsp.adb,
|
5vasthan.adb, 5vinmaop.adb, 5vinterr.adb, 5vtaprop.adb,
|
5vasthan.adb, 5vinmaop.adb, 5vinterr.adb, 5vtaprop.adb,
|
5vml-tgt.adb, 5vtaprop.adb, 5wosprim.adb, 5wtaprop.adb,
|
5vml-tgt.adb, 5vtaprop.adb, 5wosprim.adb, 5wtaprop.adb,
|
5zinterr.adb, 5zintman.adb, 5zml-tgt.adb, 5ztaprop.adb,
|
5zinterr.adb, 5zintman.adb, 5zml-tgt.adb, 5ztaprop.adb,
|
6vcpp.adb, 6vcstrea.adb, 7staprop.adb, 7stpopsp.adb,
|
6vcpp.adb, 6vcstrea.adb, 7staprop.adb, 7stpopsp.adb,
|
vxaddr2line.adb, vxaddr2line.adb, xref_lib.adb, xr_tabls.adb,
|
vxaddr2line.adb, vxaddr2line.adb, xref_lib.adb, xr_tabls.adb,
|
xr_tabls.ads, s-tasdeb.adb, s-tasdeb.adb, sem_res.ads,
|
xr_tabls.ads, s-tasdeb.adb, s-tasdeb.adb, sem_res.ads,
|
sem_util.adb, sem_util.adb, sem_util.ads, s-interr.adb,
|
sem_util.adb, sem_util.adb, sem_util.ads, s-interr.adb,
|
checks.adb, clean.adb, cstand.adb, einfo.ads,
|
checks.adb, clean.adb, cstand.adb, einfo.ads,
|
einfo.adb, exp_aggr.adb, exp_ch11.adb, exp_ch3.adb,
|
einfo.adb, exp_aggr.adb, exp_ch11.adb, exp_ch3.adb,
|
exp_ch4.adb, exp_ch5.adb, exp_ch7.adb, exp_ch9.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,
|
prj-nmsc.adb, prj-pp.adb, prj-util.adb, sem_attr.adb,
|
sem_ch10.adb, sem_ch12.adb, sem_ch4.adb, g-dirope.adb,
|
sem_ch10.adb, sem_ch12.adb, sem_ch4.adb, g-dirope.adb,
|
g-dirope.ads, gnatlbr.adb, i-cstrea.adb, inline.adb,
|
g-dirope.ads, gnatlbr.adb, i-cstrea.adb, inline.adb,
|
lib-xref.adb, sem_ch5.adb, sem_ch7.adb, sem_ch8.adb:
|
lib-xref.adb, sem_ch5.adb, sem_ch7.adb, sem_ch8.adb:
|
Minor reformatting and code clean ups.
|
Minor reformatting and code clean ups.
|
Minor changes to prevent -gnatwa warnings
|
Minor changes to prevent -gnatwa warnings
|
|
|
* ali.adb: Minor reformatting and cleanup of code
|
* ali.adb: Minor reformatting and cleanup of code
|
Acquire new SS indication of secondary stack use from ali files
|
Acquire new SS indication of secondary stack use from ali files
|
|
|
* a-numaux.ads: Add Pure_Function pragmas for all imported functions
|
* a-numaux.ads: Add Pure_Function pragmas for all imported functions
|
(since now we expect this to be done for imported functions)
|
(since now we expect this to be done for imported functions)
|
|
|
* bindgen.adb: Generate call to modify default secondary stack size if
|
* bindgen.adb: Generate call to modify default secondary stack size if
|
-Dnnn switch given
|
-Dnnn switch given
|
|
|
* bindusg.adb: Add line for new -D switch
|
* bindusg.adb: Add line for new -D switch
|
|
|
* exp_aggr.adb (Type_May_Have_Bit_Aligned_Components): More appropriate
|
* exp_aggr.adb (Type_May_Have_Bit_Aligned_Components): More appropriate
|
replacement name for Type_May_Have_Non_Bit_Aligned_Components!
|
replacement name for Type_May_Have_Non_Bit_Aligned_Components!
|
Add circuitry for both records and arrays to avoid gigi
|
Add circuitry for both records and arrays to avoid gigi
|
processing if the type involved has non-bit-aligned components
|
processing if the type involved has non-bit-aligned components
|
|
|
* exp_ch5.adb (Expand_Assign_Array): Avoid assumption that
|
* exp_ch5.adb (Expand_Assign_Array): Avoid assumption that
|
N_String_Literal node always references an E_String_Literal_Subtype
|
N_String_Literal node always references an E_String_Literal_Subtype
|
entity. This may not be true in the future.
|
entity. This may not be true in the future.
|
(Possible_Bit_Aligned_Component): Move processing of
|
(Possible_Bit_Aligned_Component): Move processing of
|
Component_May_Be_Bit_Aligned from exp_ch5 to exp_util
|
Component_May_Be_Bit_Aligned from exp_ch5 to exp_util
|
|
|
* exp_ch6.adb (Expand_Thread_Body): Pick up
|
* exp_ch6.adb (Expand_Thread_Body): Pick up
|
Default_Secondary_Stack_Size as variable so that we get value modified
|
Default_Secondary_Stack_Size as variable so that we get value modified
|
by possible -Dnnn binder parameter.
|
by possible -Dnnn binder parameter.
|
|
|
* exp_util.adb (Component_May_Be_Bit_Aligned): New function.
|
* exp_util.adb (Component_May_Be_Bit_Aligned): New function.
|
(Type_May_Have_Bit_Aligned_Components): New function.
|
(Type_May_Have_Bit_Aligned_Components): New function.
|
|
|
* exp_util.ads (Component_May_Be_Bit_Aligned): New function.
|
* exp_util.ads (Component_May_Be_Bit_Aligned): New function.
|
(Type_May_Have_Bit_Aligned_Components): New function.
|
(Type_May_Have_Bit_Aligned_Components): New function.
|
|
|
* fe.h: (Set_Identifier_Casing): Fix prototype.
|
* fe.h: (Set_Identifier_Casing): Fix prototype.
|
Add declaration for Sem_Elim.Eliminate_Error_Msg.
|
Add declaration for Sem_Elim.Eliminate_Error_Msg.
|
Minor reformatting.
|
Minor reformatting.
|
|
|
* freeze.adb (Freeze_Entity): Add RM reference to error message about
|
* freeze.adb (Freeze_Entity): Add RM reference to error message about
|
importing constant atomic/volatile objects.
|
importing constant atomic/volatile objects.
|
(Freeze_Subprogram): Reset Is_Pure indication for imported subprogram
|
(Freeze_Subprogram): Reset Is_Pure indication for imported subprogram
|
unless explicit Pure_Function pragma given, to avoid insidious bug of
|
unless explicit Pure_Function pragma given, to avoid insidious bug of
|
call to non-pure imported function getting eliminated.
|
call to non-pure imported function getting eliminated.
|
|
|
* gnat1drv.adb, gnatbind.adb, gnatchop.adb, gnatfind.adb,
|
* gnat1drv.adb, gnatbind.adb, gnatchop.adb, gnatfind.adb,
|
gnatls.adb, gnatlink.adb, gnatmem.adb, gnatname.adb, gnatsym.adb,
|
gnatls.adb, gnatlink.adb, gnatmem.adb, gnatname.adb, gnatsym.adb,
|
gnatxref.adb, gprcmd.adb, gprep.adb, make.adb: Minor reformatting
|
gnatxref.adb, gprcmd.adb, gprep.adb, make.adb: Minor reformatting
|
Add 2004 to printed copyright notice
|
Add 2004 to printed copyright notice
|
|
|
* lib-writ.ads, lib-writ.adb: Put new SS flag in ali file if secondary
|
* lib-writ.ads, lib-writ.adb: Put new SS flag in ali file if secondary
|
stack used.
|
stack used.
|
|
|
* Makefile.rtl: Add entry for g-sestin.o
|
* Makefile.rtl: Add entry for g-sestin.o
|
g-sestin.ads: New file.
|
g-sestin.ads: New file.
|
|
|
* mdll.adb: Minor changes to avoid -gnatwa warnings
|
* mdll.adb: Minor changes to avoid -gnatwa warnings
|
|
|
* mlib-tgt.adb: Minor reformatting
|
* mlib-tgt.adb: Minor reformatting
|
|
|
* opt.ads: New parameter Default_Secondary_Stack_Size (GNATBIND)
|
* opt.ads: New parameter Default_Secondary_Stack_Size (GNATBIND)
|
New switch Sec_Stack_Used (GNAT, GNATBIND)
|
New switch Sec_Stack_Used (GNAT, GNATBIND)
|
Make Default_Secondary_Stack_Size a variable instead of a constant,
|
Make Default_Secondary_Stack_Size a variable instead of a constant,
|
so that it can be modified by the new -Dnnn bind switch.
|
so that it can be modified by the new -Dnnn bind switch.
|
|
|
* rtsfind.adb (Load_Fail): Give full error message in configurable
|
* 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
|
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.
|
of a file not found, which was an oversight.
|
Note if secondary stack unit is used by compiler.
|
Note if secondary stack unit is used by compiler.
|
|
|
* sem_elab.adb (Check_A_Call): Rewrite to avoid trying to put
|
* sem_elab.adb (Check_A_Call): Rewrite to avoid trying to put
|
ineffective elaborate all pragmas on non-visible packages (this
|
ineffective elaborate all pragmas on non-visible packages (this
|
happened when a renamed subprogram was called). Now the elaborate all
|
happened when a renamed subprogram was called). Now the elaborate all
|
always goes on the package containing the renaming rather than the one
|
always goes on the package containing the renaming rather than the one
|
containing the renamed subprogram.
|
containing the renamed subprogram.
|
|
|
* sem_elim.ads, sem_elim.adb (Eliminate_Error_Msg): New procedure
|
* sem_elim.ads, sem_elim.adb (Eliminate_Error_Msg): New procedure
|
(Process_Eliminate_Pragma): Add parameter to capture pragma location.
|
(Process_Eliminate_Pragma): Add parameter to capture pragma location.
|
|
|
* sem_eval.adb (Eval_String_Literal): Do not assume that string literal
|
* sem_eval.adb (Eval_String_Literal): Do not assume that string literal
|
has an Etype that references an E_String_Literal.
|
has an Etype that references an E_String_Literal.
|
(Eval_String_Literal): Avoid assumption that N_String_Literal node
|
(Eval_String_Literal): Avoid assumption that N_String_Literal node
|
always references an E_String_Literal_Subtype entity. This may not
|
always references an E_String_Literal_Subtype entity. This may not
|
be true in the future.
|
be true in the future.
|
|
|
* sem_prag.adb (Process_Eliminate_Pragma): Add parameter to capture
|
* sem_prag.adb (Process_Eliminate_Pragma): Add parameter to capture
|
pragma location.
|
pragma location.
|
|
|
* sem_res.adb (Resolve): Specialize msg for function name used in proc
|
* sem_res.adb (Resolve): Specialize msg for function name used in proc
|
call.
|
call.
|
|
|
2004-01-05 Ed Falis
|
2004-01-05 Ed Falis
|
|
|
* g-debuti.adb: Replaced direct boolean operator with short-circuit
|
* g-debuti.adb: Replaced direct boolean operator with short-circuit
|
form.
|
form.
|
|
|
2004-01-05 Vincent Celier
|
2004-01-05 Vincent Celier
|
|
|
* bld.adb: Minor comment updates
|
* bld.adb: Minor comment updates
|
(Process_Declarative_Items): Correct incorrect name (Index_Name instead
|
(Process_Declarative_Items): Correct incorrect name (Index_Name instead
|
of Item_Name).
|
of Item_Name).
|
|
|
* make.adb (Gnatmake): Special process for files to compile/check when
|
* make.adb (Gnatmake): Special process for files to compile/check when
|
-B is specified. Fail when there are only foreign mains in attribute
|
-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
|
Main of the project file and -B is not specified. Do not skip bind/link
|
steps when -B is specified.
|
steps when -B is specified.
|
|
|
* makeusg.adb: Document new switch -B
|
* makeusg.adb: Document new switch -B
|
|
|
* opt.ads (Build_Bind_And_Link_Full_Project): New Boolean flag
|
* opt.ads (Build_Bind_And_Link_Full_Project): New Boolean flag
|
|
|
* switch-m.adb: (Scan_Make_Switches): Process -B switch
|
* switch-m.adb: (Scan_Make_Switches): Process -B switch
|
|
|
* vms_data.ads: Add new GNAT PRETTY qualifier
|
* vms_data.ads: Add new GNAT PRETTY qualifier
|
/FORM_FEED_AFTER_PRAGMA_PAGE for switch -ff
|
/FORM_FEED_AFTER_PRAGMA_PAGE for switch -ff
|
|
|
2004-01-05 Richard Kenner
|
2004-01-05 Richard Kenner
|
|
|
* trans.c (tree_transform, case N_Free_Statement): Handle thin pointer
|
* trans.c (tree_transform, case N_Free_Statement): Handle thin pointer
|
case.
|
case.
|
|
|
* misc.c (gnat_printable_name): If VERBOSITY is 2, call
|
* misc.c (gnat_printable_name): If VERBOSITY is 2, call
|
Set_Identifier_Casing.
|
Set_Identifier_Casing.
|
|
|
* decl.c (gnat_to_gnu_entity, E_Function): Give error if return type
|
* decl.c (gnat_to_gnu_entity, E_Function): Give error if return type
|
has size that overflows.
|
has size that overflows.
|
|
|
2004-01-05 Gary Dismukes
|
2004-01-05 Gary Dismukes
|
|
|
* exp_ch4.adb (Expand_Array_Comparison): Add Boolean constant to avoid
|
* exp_ch4.adb (Expand_Array_Comparison): Add Boolean constant to avoid
|
-gnatwa warning on static condition.
|
-gnatwa warning on static condition.
|
|
|
2004-01-05 Doug Rupp
|
2004-01-05 Doug Rupp
|
|
|
* link.c: (shared_libgnat_default) [VMS]: Change to STATIC.
|
* link.c: (shared_libgnat_default) [VMS]: Change to STATIC.
|
|
|
2004-01-05 Arnaud Charlet
|
2004-01-05 Arnaud Charlet
|
|
|
* Makefile.in: Install ali files using INSTALL_DATA_DATE to preserve
|
* Makefile.in: Install ali files using INSTALL_DATA_DATE to preserve
|
all attributes, including read-only attribute.
|
all attributes, including read-only attribute.
|
|
|
2004-01-05 Pascal Obry
|
2004-01-05 Pascal Obry
|
|
|
* bindgen.adb (Gen_Object_Files_Options): Generate the new shared
|
* bindgen.adb (Gen_Object_Files_Options): Generate the new shared
|
library naming scheme.
|
library naming scheme.
|
|
|
* mlib-prj.adb (Build_Library): Generate different names for the static
|
* mlib-prj.adb (Build_Library): Generate different names for the static
|
or dynamic version of the GNAT runtime. This is needed to support the
|
or dynamic version of the GNAT runtime. This is needed to support the
|
new shared library naming scheme.
|
new shared library naming scheme.
|
(Process_Binder_File): Add detection of shared library in binder file
|
(Process_Binder_File): Add detection of shared library in binder file
|
based on the new naming scheme.
|
based on the new naming scheme.
|
|
|
* gnatlink.adb (Process_Binder_File): Properly detect the new naming
|
* gnatlink.adb (Process_Binder_File): Properly detect the new naming
|
scheme for the shared runtime libraries.
|
scheme for the shared runtime libraries.
|
|
|
* Makefile.in:
|
* Makefile.in:
|
(LIBRARY_VERSION) [VMS]: Convert all . to _ to conform to new naming
|
(LIBRARY_VERSION) [VMS]: Convert all . to _ to conform to new naming
|
scheme.
|
scheme.
|
(install-gnatlib): Do not create symlinks for shared libraries.
|
(install-gnatlib): Do not create symlinks for shared libraries.
|
(gnatlib-shared-default): Idem.
|
(gnatlib-shared-default): Idem.
|
(gnatlib-shared-dual-win32): New target. Not used for now as the
|
(gnatlib-shared-dual-win32): New target. Not used for now as the
|
auto-import feature does not support arrays/records.
|
auto-import feature does not support arrays/records.
|
(gnatlib-shared-win32): Do not create copy for the shared libraries.
|
(gnatlib-shared-win32): Do not create copy for the shared libraries.
|
(gnatlib-shared-vms): Fix shared runtime libraries names.
|
(gnatlib-shared-vms): Fix shared runtime libraries names.
|
|
|
* osint.ads, osint.adb (Shared_Lib): New routine, returns the target
|
* osint.ads, osint.adb (Shared_Lib): New routine, returns the target
|
dependent runtime shared library name.
|
dependent runtime shared library name.
|
|
|
2004-01-05 Vasiliy Fofanov
|
2004-01-05 Vasiliy Fofanov
|
|
|
* osint.adb (Read_Library_Info): Remove bogus check if ALI is older
|
* osint.adb (Read_Library_Info): Remove bogus check if ALI is older
|
than the object.
|
than the object.
|
|
|
2004-01-05 Ed Schonberg
|
2004-01-05 Ed Schonberg
|
|
|
* sem_ch4.adb (Analyze_Allocator): Check restriction on dynamic
|
* sem_ch4.adb (Analyze_Allocator): Check restriction on dynamic
|
protected objects when allocator has a subtype indication, not a
|
protected objects when allocator has a subtype indication, not a
|
qualified expression. Note that qualified expressions may have to be
|
qualified expression. Note that qualified expressions may have to be
|
checked when limited aggregates are implemented.
|
checked when limited aggregates are implemented.
|
|
|
* sem_prag.adb (Analyze_Pragma, case Import): If enclosing package is
|
* sem_prag.adb (Analyze_Pragma, case Import): If enclosing package is
|
pure, emit warning.
|
pure, emit warning.
|
(Analyze_Pragma, case Pure_Function): If enclosing package is pure and
|
(Analyze_Pragma, case Pure_Function): If enclosing package is pure and
|
subprogram is imported, remove warning.
|
subprogram is imported, remove warning.
|
|
|
2004-01-05 Geert Bosch
|
2004-01-05 Geert Bosch
|
|
|
* s-poosiz.adb: Update copyright notice.
|
* s-poosiz.adb: Update copyright notice.
|
(Allocate): Use Task_Lock to protect against concurrent access.
|
(Allocate): Use Task_Lock to protect against concurrent access.
|
(Deallocate): Likewise.
|
(Deallocate): Likewise.
|
|
|
2004-01-05 Joel Brobecker
|
2004-01-05 Joel Brobecker
|
|
|
* s-stalib.adb (Elab_Final_Code): Add missing year in date inside ???
|
* s-stalib.adb (Elab_Final_Code): Add missing year in date inside ???
|
comment.
|
comment.
|
|
|
|
|
|
|
Copyright (C) 2004 Free Software Foundation, Inc.
|
Copyright (C) 2004 Free Software Foundation, Inc.
|
|
|
Copying and distribution of this file, with or without modification,
|
Copying and distribution of this file, with or without modification,
|
are permitted in any medium without royalty provided the copyright
|
are permitted in any medium without royalty provided the copyright
|
notice and this notice are preserved.
|
notice and this notice are preserved.
|
|
|