aboutsummaryrefslogtreecommitdiff
path: root/gcc/ada/ChangeLog
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/ada/ChangeLog')
-rw-r--r--gcc/ada/ChangeLog310
1 files changed, 310 insertions, 0 deletions
diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog
index 222b9cd..9e83540 100644
--- a/gcc/ada/ChangeLog
+++ b/gcc/ada/ChangeLog
@@ -1,3 +1,313 @@
+2024-06-20 Steve Baird <baird@adacore.com>
+
+ * sem_attr.adb (Resolve_Attribute.Proper_Op): When resolving the
+ name of the reducer subprogram in a reduction expression,
+ Proper_Op treats references to operators defined in Standard
+ specially. Disable this special treatment if the type of the
+ reduction expression is not the right class of type for the
+ operator, or if a new Boolean parameter (named "Strict") is True.
+ (Resolve_Attribute): In the overloaded case, iterate over the
+ reducer subprogram candidates twice. First with Strict => True and
+ then, if no good intepretation is found, with Strict => False.
+
+2024-06-20 Yannick Moy <moy@adacore.com>
+
+ * ghost.adb (Check_Ghost_Type): Fix checking.
+
+2024-06-20 Bob Duff <duff@adacore.com>
+
+ * expander.ads: Minor comment fixes.
+ * nlists.ads: Misc comment improvements.
+ * sem_aux.ads (First_Discriminant): Improve comment.
+ * sem_ch12.adb: Misc cleanups.
+ (Associations): New package containing type Gen_Assocs_Rec
+ to represent matchings, and function Match_Assocs to create the
+ Gen_Assocs_Rec constant.
+ (Analyze_Associations): Call Match_Assocs, and other major
+ changes related to that.
+ * sem_ch12.ads: Minor comment fixes.
+ * sem_ch3.adb: Minor comment fixes.
+
+2024-06-20 Steve Baird <baird@adacore.com>
+
+ * doc/gnat_rm/gnat_language_extensions.rst: Update documentation.
+ * doc/gnat_rm/implementation_defined_pragmas.rst: Update
+ documentation.
+ * errout.adb
+ (Error_Msg_GNAT_Extension): Update error message text.
+ * par-prag.adb: Update pragma parsing. This includes changing the
+ the name of the Check_Arg_Is_On_Or_Off formal parameter All_OK_Too
+ to All_Extensions_OK_Too.
+ * sem_prag.adb (Analyze_Pragma): In analyzing an
+ Extensions_Allowed pragma, replace uses of Name_All with
+ Name_All_Extensions; update a comment to reflect this.
+ * snames.ads-tmpl: Add Name_All_Extensions declaration.
+ * gnat_rm.texi: Regenerate.
+
+2024-06-20 Gary Dismukes <dismukes@adacore.com>
+
+ * sem_ch4.adb (Try_Selected_Component_In_Instance): Reverse if_statement
+ clauses so that the testing for the special case of extensions of private
+ types in instance bodies is done first, followed by the testing for the case
+ of a parent type that's a generic actual type. In the extension case, apply
+ Base_Type to the type actual in the test of Used_As_Generic_Actual, and add
+ a test of Present (Parent_Subtype (Typ)).
+
+2024-06-20 Yannick Moy <moy@adacore.com>
+
+ * inline.adb (Establish_Actual_Mapping_For_Inlined_Call): In the
+ case of formal with a fixed lower bounds, insert appropriate
+ conversion like in the case of a constrained type.
+ * tbuild.adb (Unchecked_Convert_To): Do not skip the conversion
+ when it may involve sliding due to a type with fixed lower bound.
+
+2024-06-20 Eric Botcazou <ebotcazou@adacore.com>
+
+ * sem_ch12.adb (Instantiate_Formal_Package): Accept renamings of a
+ generic parent that is a child unit for the abbreviated instance.
+
+2024-06-20 Eric Botcazou <ebotcazou@adacore.com>
+
+ * exp_ch4.adb (Expand_Composite_Equality): In the untagged record
+ case, always look for a user-defined equality operator in Ada 2012.
+
+2024-06-20 Doug Rupp <rupp@adacore.com>
+
+ * ali.ads (Interrupts_Default_To_System): New boolean.
+ (Interrupts_Default_To_System_Specified): New boolean.
+ * ali.adb (Interrupts_Default_To_System_Specified): Initialize.
+ (Interrupts_Default_To_System): Initialize.
+ (Scan_ALI): Processing for "ID".
+ * bindgen.adb: Coallesce comments on interrupt settings to ...
+ (Gen_Adainit): Import Interrupts_Default_To_System flag and set if
+ pragma specified.
+ (Gen_Output_File_Ada): Generate Local_Interrupt_States according
+ to pragma.
+ * init.c: ... here.
+ [vxworks] (__gnat_install_handler): Test for interrupt_state.
+ (__gl_interrupts_default_to_system): New global flag.
+ (__gnat_get_interrupt_State): return interrupt state according to
+ new global flag.
+ * lib-writ.ads: Document "ID".
+ * lib-writ.adb: Write out "ID".
+ * opt.ads (Interrupts_System_By_Default): New boolean, defaulted
+ to False.
+ * par-prag.adb (Pragma_Interrupts_System_By_Default): New.
+ * sem_prag.adb (Pragma_Interrupts_System_By_Default): Handle it.
+ (Pragma_Interrupts_System_By_Default): Default it.
+ * snames.ads-tmpl (Name_Interrupts_System_By_Default): New name.
+ (Pragma_Interrupts_System_By_Default): New
+ * libgnarl/s-intman__posix.adb (Initialize): Ensure the
+ Keep_Unmasked signal is sigset-able.
+ * doc/gnat_rm/implementation_defined_pragmas.rst: Document pragma
+ Interrupts_System_By_Default.
+ * doc/gnat_ugn/the_gnat_compilation_model.rst (Configuration
+ pragmas): Add Interrupts_System_By_Default. (Partition-Wide
+ Settings): Mention pragma Interrupts_System_By_Default.
+ * gnat_rm.texi: Regenerate.
+ * gnat_ugn.texi: Regenerate.
+
+2024-06-20 Eric Botcazou <ebotcazou@adacore.com>
+
+ * exp_ch4.adb (Expand_Array_Equality.Component_Equality): Copy the
+ Comes_From_Source flag from the original test to the new one, and
+ remove obsolete code dealing with unchecked unions.
+ * sem_util.adb (Has_Inferable_Discriminants): Return False for an
+ incomplete or private nominal subtype.
+
+2024-06-20 Eric Botcazou <ebotcazou@adacore.com>
+
+ * freeze.adb (Freeze_Expression): Also attach pending freeze nodes
+ to the parent in the case of an internal block in a spec expression.
+
+2024-06-20 Eric Botcazou <ebotcazou@adacore.com>
+
+ * debug.adb (d_l): Document new usage for the compiler.
+ * freeze.adb (Check_Strict_Alignment): Set the Strict_Alignment
+ flag on array types with aliased component, except if the
+ component size is equal to the storage unit or the -gnatd_l switch
+ is specified.
+
+2024-06-20 Eric Botcazou <ebotcazou@adacore.com>
+
+ * doc/gnat_rm/implementation_advice.rst (Representation Clauses):
+ Remove >> marker and add end of sentence after code-block directive.
+ (RM 13.5.3(7-8)): Update to Ada 2005 wording.
+ * doc/gnat_rm/implementation_defined_characteristics.rst
+ (RM 13.5.3(5)): Likewise.
+ * gnat_rm.texi: Regenerate.
+ * gnat_ugn.texi: Regenerate.
+
+2024-06-20 Piotr Trojanek <trojanek@adacore.com>
+
+ * doc/gnat_rm/implementation_defined_aspects.rst
+ (Aspect Subprogram_Variant): Refer to SPARK User's Guide.
+ * doc/gnat_rm/implementation_defined_pragmas.rst
+ (Pragma Subprogram_Variant): Document syntax to satisfy the
+ convention; refer to SPARK User's Guide for semantics.
+ * gnat_rm.texi: Regenerate.
+ * gnat_ugn.texi: Regenerate.
+
+2024-06-20 Eric Botcazou <ebotcazou@adacore.com>
+
+ * freeze.adb (Freeze_Array_Type): Call Propagate_Controlled_Flags
+ to propagate the controlled flags from the component to the array.
+ (Freeze_Record_Type): Propagate the Finalize_Storage_Only flag
+ from the components to the record.
+ * sem_ch3.adb (Analyze_Private_Extension_Declaration): Do not call
+ Propagate_Concurrent_Flags here but...
+ (Array_Type_Declaration): Tidy and call Propagate_Controlled_Flags
+ to propagate the controlled flags from the component to the array.
+ (Build_Derived_Private_Type): Do not propagate the controlled flags
+ manually here but...
+ (Build_Derived_Record_Type): ...call Propagate_Controlled_Flags to
+ propagate the controlled flags from parent to derived type.
+ (Build_Derived_Type): Likewise.
+ (Copy_Array_Base_Type_Attributes): Call Propagate_Controlled_Flags
+ to copy the controlled flags.
+ (Record_Type_Definition): Streamline the propagation of the
+ Finalize_Storage_Only flag from the components to the record.
+ * sem_ch7.adb (Preserve_Full_Attributes): Use Full_Base and call
+ Propagate_Controlled_Flags to copy the controlled flags.
+ * sem_ch9.adb (Analyze_Protected_Definition): Use canonical idiom
+ to compute Has_Controlled_Component.
+ (Analyze_Protected_Type_Declaration): Minor tweak.
+ * sem_ch13.adb (Inherit_Aspects_At_Freeze_Point): Do not deal with
+ Finalize_Storage_Only here.
+ * sem_util.ads (Propagate_Controlled_Flags): New declaration.
+ * sem_util.adb (Propagate_Controlled_Flags): New procedure.
+
+2024-06-20 Piotr Trojanek <trojanek@adacore.com>
+
+ * freeze.adb (Check_Current_Instance): This routine is only called
+ with parameter E being a type entity, so there is no need to check
+ for types just before the equality with E.
+ * sem_ch13.adb (Analyze_Aspect_Specifications): Regroup condition
+ to avoid unnecessary evaluation.
+ (Check_Aspect_At_End_Of_Declarations): If In_Instance is true,
+ then the routine exits early.
+
+2024-06-20 Piotr Trojanek <trojanek@adacore.com>
+
+ * freeze.adb (Find_Aspect_No_Parts): Tune whitespace.
+ * sem_ch13.adb (Check_Aspect_At_End_Of_Declarations): Fix style.
+
+2024-06-20 Eric Botcazou <ebotcazou@adacore.com>
+
+ * aspects.ads (Aspect_Id): Remove Aspect_Max_Entry_Queue_Depth.
+ (global arrays): Remove entry for it.
+ * exp_ch9.adb (Expand_N_Protected_Type_Declaration): Remove
+ reference to pragma Max_Entry_Queue_Depth in comment.
+ * par-prag.adb (Prag): Remove handling of
+ Pragma_Max_Entry_Queue_Depth.
+ * sem_ch13.adb (Analyze_Aspect_Specifications): Remove reference
+ to aspect Max_Entry_Queue_Depth in comment.
+ (Analyze_Aspect_Specifications): Remove processing of aspect
+ Max_Entry_Queue_Depth.
+ (Check_Aspect_At_Freeze_Point): Likewise.
+ * sem_prag.ads (Find_Related_Declaration_Or_Body): Remove
+ reference to pragma Max_Entry_Queue_Depth in comment.
+ * sem_prag.adb (Analyze_Pragma): Remove processing of pragma
+ Max_Entry_Queue_Depth.
+ (Sig_Flags): Remove entry for Pragma_Max_Entry_Queue_Depth.
+ * sem_util.adb (Get_Max_Queue_Length): Remove handling of pragma
+ Max_Entry_Queue_Depth.
+ (Has_Max_Queue_Length): Likewise.
+ * snames.ads-tmpl (Name_Max_Entry_Queue_Depth): Move back from
+ pragmas section to others section.
+ (Pragma_Id): Remove Pragma_Max_Entry_Queue_Depth.
+
+2024-06-20 Eric Botcazou <ebotcazou@adacore.com>
+
+ * doc/gnat_rm/gnat_language_extensions.rst (Pragma Storage_Model):
+ Rename to Storage Model.
+ * doc/gnat_rm/implementation_defined_aspects.rst: Alphabetize.
+ * gnat_rm.texi: Regenerate.
+ * gnat_ugn.texi: Regenerate.
+
+2024-06-20 Ronan Desplanques <desplanques@adacore.com>
+
+ * gnat1drv.adb (Gnat1drv): Add coverage instrumentation
+ annotations.
+
+2024-06-20 Eric Botcazou <ebotcazou@adacore.com>
+
+ * exp_ch3.adb (Expand_Freeze_Array_Type): Do not propagate the
+ concurrent flags and the Has_Controlled_Component flag here.
+ (Expand_Freeze_Record_Type): Likewise.
+ * freeze.adb (Freeze_Array_Type): Propagate the concurrent flags.
+ (Freeze_Record_Type): Likewise.
+ * sem_util.adb (Has_Some_Controlled_Component): Adjust comment.
+
+2024-06-20 Eric Botcazou <ebotcazou@adacore.com>
+
+ * mutably_tagged.ads: Fix minor issues in comments throughout.
+
+2024-06-20 Richard Kenner <kenner@adacore.com>
+
+ * debug.adb: Add documentation for -gnatd_w.
+
+2024-06-20 Viljar Indus <indus@adacore.com>
+
+ * doc/gnat_ugn/building_executable_programs_with_gnat.rst: Update
+ documentation for -gnatw.v.
+ * sem_ch13.adb: Convert all -gnatw.v related messages to warnings.
+ * gnat_ugn.texi: Regenerate.
+
+2024-06-20 Viljar Indus <indus@adacore.com>
+
+ * doc/gnat_ugn/building_executable_programs_with_gnat.rst: Update
+ documentation for -gnatw.n switch.
+ * exp_util.adb: Convert info messages into warnings.
+ * gnat_ugn.texi: Regenerate.
+
+2024-06-20 Viljar Indus <indus@adacore.com>
+
+ * doc/gnat_ugn/building_executable_programs_with_gnat.rst: Add
+ entry for -gnatis.
+ * errout.adb (Error_Msg_Internal): Stop printing info messages if
+ -gnatis was used.
+ * opt.ads: Add Info_Suppressed flag to track whether info messages
+ should be suppressed.
+ * switch-c.adb: Add parsing for -gnatis.
+ * gnat_ugn.texi: Regenerate.
+
+2024-06-20 Viljar Indus <indus@adacore.com>
+
+ * atree.ads: Remove Warning_Info_Messages.
+ * errout.adb: Remove various places where Warning_Info_Messages
+ was used.
+ * erroutc.adb: Remove various places where Warning_Info_Messages
+ was used. Create Error_Msg_Object objects with only an info
+ attribute if the message contained both info and warning insertion
+ characters. New method Has_Switch_Tag for detecting if a message
+ should have an error tag.
+ * errutil.adb: Create Error_Msg_Object objects with only an info
+ attribute if the message contained both info and warning insertion
+ characters.
+
+2024-06-20 Justin Squirek <squirek@adacore.com>
+
+ * doc/gnat_rm/gnat_language_extensions.rst: Add entry for 'Super.
+ * doc/gnat_rm/implementation_defined_attributes.rst: Remove entry
+ for 'Super.
+ * gnat_rm.texi: Regenerate.
+ * gnat_ugn.texi: Regenerate.
+
+2024-06-20 Steve Baird <baird@adacore.com>
+
+ * gprep.adb (Process_Files.Process_One_File): When calling OS_Exit in an error
+ path, pass in a Status parameter of 1 instead of 0 (because 0
+ indicates success).
+ * lib-load.adb (Load_Main_Source): Do not emit a message about a missing source file
+ if other error messages were generated by calling Load_Source_File;
+ the file isn't missing - it failed preprocessing.
+
+2024-06-20 Piotr Trojanek <trojanek@adacore.com>
+
+ * sem_attr.adb (Attribute_22): Add Put_Image and Object_Size.
+ * sem_attr.ads (Attribute_Impl_Def): Remove Object_Size.
+
2024-06-14 Eric Botcazou <ebotcazou@adacore.com>
* gcc-interface/Makefile.in (tmake_file): Remove all references.