From: Yannick Moy
Update checking of ghost code after a small change in SPARK RM
rules 6.9(15) and 6.9(20), so that the Ghost assertion policy
that matters when checking the validity of a reference to a ghost entity
in an assertion expression is the Ghost assertion policy at the point
of declarat
From: Piotr Trojanek
Routine Insert_Valid_Check only applies checks when Expr_Known_Valid
query returns False; there is no need to call this query before
inserting checks.
Code cleanup; behavior is unaffected.
gcc/ada/
* exp_imgv.adb (Expand_User_Defined_Enumeration_Image)
(Exp
From: Piotr Trojanek
Replace repeated calls to Sloc with uses of local constant Loc.
Code cleanup; behavior is unaffected.
gcc/ada/
* exp_ch3.adb (Expand_N_Object_Declaration): Replace calls to Sloc
with uses of Loc; turn variable Prag into constant.
Tested on x86_64-pc-linux-
From: Ronan Desplanques
Before this patch, the documentation of -gnaty0 used 0-based indexing
for column numbers while 1-based indexing is used everywhere else. This
patch makes this documentation use 1-based indexing, and also adds a
missing parenthesis.
gcc/ada/
* doc/gnat_ugn/buildin
From: Viljar Indus
gcc/ada/
* doc/gnat_ugn/building_executable_programs_with_gnat.rst: update
documentation for the -gnatw_l switch.
* usage.adb: Add -gnatw_l entry.
* gnat_ugn.texi: Regenerate.
Tested on x86_64-pc-linux-gnu, committed on master.
---
.../gnat_u
From: Eric Botcazou
The problem is that the size clause changes the floating-point format used
for the type, but it must not when this format is the widest format that is
supported in hardware on the target. Instead a padding type must be built
and the associated warning given.
gcc/ada/
When changing the scope for entities found in the entry body that is
mutated into a procedure, the compiler needs to look deeper than only
the top level entities as expansion may produce object declarations
which scopes are also the entry. For example, the tree after expansion
may look like:
pro
From: Ronan Desplanques
Before this patch, the gnat command sent to standard error pieces of
information that are a better match for standard output. This patch
makes this information go to standard output.
gcc/ada/
* gnatcmd.adb (GNATCmd): Fix standard output stream.
Tested on x86_64-
From: Bob Duff
...plus minor improvements to existing documentation.
gcc/ada/
* doc/gnat_rm/gnat_language_extensions.rst: I assume "extended set
of extensions" was a typo for "experimental set of extensions",
because "extended extensions" is repetitive and redundant. "in
From: Patrick Bernardi
Size of pthread data types now need to be defined for FreeBSD ports.
Traceback support for AArch64 FreeBSD is now defined.
gcc/ada/
* s-oscons-tmplt.c: Define sizes of pthread data types on FreeBSD.
* tracebak.c: Use GCC unwinder and adjust PC appropriatel
From: Bob Duff
Do not pass null for the Collection parameter when
Finalize_Storage_Only is in effect. If the collection
is null in that case, we will blow up later when we
deallocate the object.
gcc/ada/
* exp_ch6.adb (Add_Collection_Actual_To_Build_In_Place_Call):
Remove Finali
From: Steve Baird
Implement the new legality rules of AI22-0106 which (as discussed in the AI)
are needed to disallow constructs whose semantics would otherwise be poorly
defined.
gcc/ada/
* sem_aggr.adb (Resolve_Array_Aggregate): Implement the two new
legality rules of AI11-010
From: Eric Botcazou
The initial implementation of the GNAT aspect/pragma Volatile_Full_Access
made it incompatible with Atomic, because it was not decided whether the
read-modify-write sequences generated by Volatile_Full_Access would need
to be implemented atomically when Atomic was also specifi
From: Steve Baird
The non-strict overflow checking code does a better job of eliminating
overflow checks if given an expression consisting only of predefined
operators (including relationals), literals, identifiers, and conditional
expressions. If it is both feasible and useful, rewrite a
Length
From: Eric Botcazou
The initial implementation of the GNAT aspect/pragma Volatile_Full_Access
made it incompatible with Atomic, because it was not decided whether the
read-modify-write sequences generated by Volatile_Full_Access would need
to be implemented atomically when Atomic was also specifi
From: Eric Botcazou
Some ancient 32-bit ABIs, most notably that of x86/Linux, misalign double
scalars in record types, so comparing DECL_ALIGN with TYPE_ALIGN directly
may give the wrong answer for them.
gcc/ada/
* gcc-interface/trans.cc (addressable_p) : Add kludge
to cope with
The procedure Note_Uplevel_Bound was implemented as a custom expression
tree walk. This change replaces this custom tree traversal by a more
idiomatic use of Traverse_Proc.
gcc/ada/
* exp_unst.adb (Check_Static_Type::Note_Uplevel_Bound): Refactor
to use the generic Traverse_Proc.
From: Eric Botcazou
This has historically been done only on platforms requiring the strict
alignment of memory references, but this can arguably be considered as
being mandated by the language on all of them.
gcc/ada/
* gcc-interface/trans.cc (addressable_p) : Take into
account
From: Eric Botcazou
When updating the size after making a packable type in gnat_to_gnu_field,
we fail to clear it again when it is not constant.
gcc/ada/
* gcc-interface/decl.cc (gnat_to_gnu_field): Clear again gnu_size
after updating it if it is not constant.
Tested on x86_64-
From: Eric Botcazou
The change causes more temporaries to be created at call sites for unaligned
actual parameters, thus revealing that the machinery does not properly deal
with unconstrained nominal subtypes for them.
gcc/ada/
* gcc-interface/trans.cc (create_temporary): Deal with type
From: Ronan Desplanques
The purpose of this patch is to silence a GNATSAS report.
gcc/ada/
* inline.adb (Cannot_Inline): Remove assertion.
* inline.ads (Cannot_Inline): Add precondition.
Tested on x86_64-pc-linux-gnu, committed on master.
---
gcc/ada/inline.adb | 2 --
gcc/ad
From: Eric Botcazou
This factors out the interface to the low-level field layout machinery.
gcc/ada/
* gcc-interface/gigi.h (default_field_alignment): New function.
* gcc-interface/misc.cc: Include tm_p header file.
(default_field_alignment): New function.
* gcc-
From: Jose Ruiz
The parsing to compute the checksums of runtime files (within the
binder) was done using the default Ada version (Ada 2012 currently),
while the creation of the checksum, when the runtime files are
compiled, is performed in a more recent Ada version (Ada 2022
currently). This chan
From: Piotr Trojanek
Code cleanup; semantics is unaffected.
gcc/ada/
* exp_util.ads, exp_util.adb (Duplicate_Subexpr_No_Checks):
Remove parameters, which are no longer used.
Tested on x86_64-pc-linux-gnu, committed on master.
---
gcc/ada/exp_util.adb | 18 ++
From: Eric Botcazou
This is required to support misalignment of tagged types in legacy code.
gcc/ada/
* gcc-interface/trans.cc (addressable_p) : Add bypass
for internal fields on strict-alignment platforms.
Tested on x86_64-pc-linux-gnu, committed on master.
---
gcc/ada/gcc-i
From: Piotr Trojanek
Code cleanup.
gcc/ada/
* libgnat/s-os_lib.ads: Remove extra whitespace.
Tested on x86_64-pc-linux-gnu, committed on master.
---
gcc/ada/libgnat/s-os_lib.ads | 12 ++--
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/gcc/ada/libgnat/s-os_lib.
From: Piotr Trojanek
When semantic checking mode is active, i.e. when switch -gnatc is
present or when the frontend is operating in the GNATprove mode,
we now rewrite calls to GNAT.Source_Info routines in evaluation
and not expansion (which is disabled in these modes).
This is needed to recogniz
From: Eric Botcazou
memmodel.h must be included alongside tm_p.h for the sake of the SPARC port.
gcc/ada/
* gcc-interface/misc.cc: Include memmodel.h before tm_p.h.
Tested on x86_64-pc-linux-gnu, committed on master.
---
gcc/ada/gcc-interface/misc.cc | 1 +
1 file changed, 1 insertio
From: Piotr Trojanek
Code cleanup; semantics is unaffected.
gcc/ada/
* checks.adb (Remove_Checks): Combine CASE alternatives.
Tested on x86_64-pc-linux-gnu, committed on master.
---
gcc/ada/checks.adb | 34 --
1 file changed, 12 insertions(+), 22 delet
From: Viljar Indus
The total number of characters on a source code line
is different on Windows and Linux based systems
(CRLF vs LF endings). Use the last non line change
character to adjust printing the spans that go over
the end of line.
gcc/ada/
* diagnostics-pretty_emitter.adb (Get_
From: Javier Miranda
Enable reporting an error when this new aspect/pragma is set to
True, and the sources are compiled without language extensions
allowed.
gcc/ada/
* sem_ch13.adb (Analyze_One_Aspect): Call
Error_Msg_GNAT_Extension() to report an error when the aspect
F
From: Viljar Indus
gcc/ada/
* gcc-interface/decl.cc: Use same warning characters in
continuation messages.
* gcc-interface/trans.cc: Likewise.
Tested on x86_64-pc-linux-gnu, committed on master.
---
gcc/ada/gcc-interface/decl.cc | 8
gcc/ada/gcc-interface/tr
Eric Botcazou writes:
>> commit 72c6938f29cbeddb3220720e68add4cf09ffd794
>> Author: Eric Botcazou
>> Date: Sun Aug 25 15:20:59 2024 +0200
>>
>> ada: Streamline handling of low-level peculiarities of record field
>> layout
>>
>> broke the Ada build on SPARC:
>>
>> In file included from ./tm
From: Olivier Hainque
This allows reusing a-intnam__linux.ads for Android.
gcc/ada/ChangeLog:
* libgnarl/s-linux__android-arm.ads: Define SIGSYS.
* libgnarl/s-linux__android-aarch64.ads: Define SIGSYS.
* libgnarl/s-osinte__android.ads: Expose SIGSYS value.
Tested on x86
From: Steve Baird
In some cases involving a universal-integer-valued attribute reference
(typically a 'Length attribute reference) occurring as an actual parameter
in a call, the runtime check that the constraints of the formal parameter
are satisfied is incorrectly not performed.
gcc/ada/Change
From: Olivier Hainque
This is the most common definition. Otherwise, from the default:
a-nallfl.ads:51:13: ... intrinsic binding type mismatch on result
a-nallfl.ads:51:13: ... intrinsic binding type mismatch on parameter 1
a-nallfl.ads:51:13: ... profile of "Sin" doesn't match the builtin it bi
From: Olivier Hainque
Unlike the ARM port already there, aarch64 is dwarf CFI based
for unwinding and Android-Linux exposes kernel CFI for signal
handlers.
gcc/ada/ChangeLog:
* init.c (__gnat_error_handler): Map signals straight to Ada
exceptions, without a local CFI trampoline.
From: Olivier Hainque
gcc/ada/ChangeLog:
* Makefile.rtl: Extend arm-android section to aarch64, in a similar
fashion as other arm/arch64 configurations. Introduce pair
selection guards to prevent match of aarch64-linux-android on the
regular aarch64-linux% cross a
From: Ghjuvan Lacambre
GNAT sometimes needs help from the GCC back-end in order to check
whether Compile_Time_{Warning,Error} are true. As CodePeer does not have
access to a GCC back-end, it is unable to perform these checks. Thus we
need to remove said pragmas from the tree.
gcc/ada/ChangeLog:
From: Eric Botcazou
This is modeled on the existing Is_Init_Proc predicate.
gcc/ada/ChangeLog:
* exp_tss.ads (Is_Rep_To_Pos): New function declaration.
* exp_tss.adb (Is_Rep_To_Pos): New function body.
* fe.h (Is_Rep_To_Pos): New macro and extern declaration.
Tested on x
From: Eric Botcazou
The load address of PIE executables is printed in non-symbolic backtraces
(-E binder switch) but it makes sense to print it in symbolic backtraces
(-Es binder switch) too, because symbolic backtraces may degenerate into
non-symbolic ones when the executable is stripped for exa
From: squirek
This patch fixes an issue in the compiler whereby declarations of derived types
whose parent is a mutably tagged type cause early freezing of the parent type -
leading to spurious compile-time errors.
gcc/ada/ChangeLog:
* sem_ch3.adb (Derived_Type_Declaration): Modify gener
From: Olivier Hainque
Building an aarch64-android compiler with the current sources
initially intended for arm-android expectedly trips on problems.
This change is meant to address:
```
.../gcc/ada/rts % ../../gnat1 -quiet ... a-stbufi.adb -I.
s-osinte.ads:591:07: error: component "sa_flags" ov
From: Ghjuvan Lacambre
The indentation was wrong on these two lines.
gcc/ada/ChangeLog:
* sem_prag.adb (Process_Compile_Time_Warning_Or_Error): Fix
indentation.
Tested on x86_64-pc-linux-gnu, committed on master.
---
gcc/ada/sem_prag.adb | 4 ++--
1 file changed, 2 insertions(
From: Ronan Desplanques
This patch introduces a GNAT extension that adds a new aspect,
External_Initialization. A section is added to the reference
manual with a description of what the aspect does.
The implementation reuses existing mechanisms, in particular
Sinput.L.Load_Source_File and Sem_Re
From: Steve Baird
Fix two bugs uncovered by a recent ACATS test C3A1005: a freezing problem
and a case where a user-defined equality function for an incomplete type
was incorrectly hidden from use-clause visibility by the "corresponding"
predefined op (which doesn't actually exist).
gcc/ada/Chan
From: Ronan Desplanques
This patch fixes a corner case that was not handled correctly by
Generate_Minimal_Reproducer.
gcc/ada/ChangeLog:
* generate_minimal_reproducer.adb (Generate_Minimal_Reproducer):
Fix behavior on child subprograms without specs.
Tested on x86_64-pc-linux-gn
From: Raphaël AMIARD
We want to allow statements lists with declarations *and* an exception
handler. What follows from this is that declarations declared in the
statement list are *not* visible from the exception handler, and that
the following code:
declare
A : Integer := 12;
be
From: Ronan Desplanques
This patch adds a way to have the adareducer tool run on a appropriate
set of files when GNAT crashes. This feature is behind the -gnatd_m
debugging switch.
gcc/ada/ChangeLog:
* comperr.adb (Compiler_Abort): Add call to
Generate_Minimal_Reproducer and repl
From: Steve Baird
If a limited private partial view of a type has an access discriminant with
a default expression, and if the type (perhaps tagged, perhaps not) is
completed by deriving from an immutably limited type, then the default
discriminant expression should not be rejected.
gcc/ada/Chan
From: Eric Botcazou
The issue arises when the aggregate consists only of iterated associations
because, in this case, its expansion uses a 2-pass mechanism which creates
a temporary that needs a fully-fledged initialization, thus running afoul
of the optimization that avoids building the initiali
From: Viljar Indus
A container aggregate can either be empty, contain only
positional elements or named element associations. Reject the
scenario where the latter two are both used.
gcc/ada/ChangeLog:
* diagnostics-constructors.adb
(Make_Mixed_Container_Aggregate_Error): New func
From: Eric Botcazou
When the Image attribute is applied directly to another attribute returning
Universal_Integer, for example Enum_Rep, it is converted to the equivalent
of Universal_Integer'Image, which is implemented by Long_Long_Long_Integer
and thus triggers a dependency on System.Img_LLLI,
From: Viljar Indus
Previously when a bounded list was initialized with an array aggregate
then we used the correct size only if the array was one dimensional.
This patch adds support for deriving the size for multidimensional array
types as well.
gcc/ada/ChangeLog:
* exp_aggr.adb (Build_
From: Ronan Desplanques
This patch adds a pragma that triggers an internal compiler error when
analyzed. It is not externally documented and makes it possible to test
the code that runs when the compiler encounters an internal error.
gcc/ada/ChangeLog:
* snames.ads-tmpl: Add new pragma d
From: Ronan Desplanques
When a file included through External_Initialization has been modified,
the unit including it must be recompiled. This patch adds the
generation of dependency lines to the handling of the
External_Initialization aspect, to signal that fact to gnatmake and
other tools that
From: Eric Botcazou
This removes the loop trying to find a pointer mode among the integer modes,
which is obsolete and does not work on platforms where pointers have unusual
size like MSP430 or special semantics like Morello.
gcc/ada/ChangeLog:
PR ada/116498
* gcc-interface/decl.
From: Ronan Desplanques
This patch puts a comment explaining the absence of Storage_Size in an
alphabetically sorted list at the spot where Storage_Size would be in
that list.
gcc/ada/ChangeLog:
* snames.ads-tmpl: Tweak position of comment.
Tested on x86_64-pc-linux-gnu, committed on ma
From: Eric Botcazou
The compiler reports that an actual does not match the formal when there
is a defaulted formal discrete type because Check_Formal_Package_Instance
fails to skip the implicit base type generated by the compiler.
gcc/ada/ChangeLog:
PR ada/114636
* sem_ch12.adb (
From: Eric Botcazou
The problem is that Exp_Put_Image.Build_Elementary_Put_Image_Call uses the
signedness of the base type but the size of the first subtype, hence the
discrepancy between them.
gcc/ada/ChangeLog:
PR ada/115535
* exp_put_image.adb (Build_Elementary_Put_Image_Call)
From: Tonu Naks
gcc/ada/ChangeLog:
* doc/gnat_rm/gnat_language_extensions.rst: replace
references to RFC's with appropriate text from the rfc
* gnat_rm.texi: Regenerate.
* gnat_ugn.texi: Regenerate.
Tested on x86_64-pc-linux-gnu, committed on master.
---
.../doc
From: Eric Botcazou
The problem occurs when the compiler is trying to find a context to which
it can hoist finalization actions coming from the if-expression, because
Find_Hook_Context incorrectly returns the N_Elsif_Part node.
gcc/ada/ChangeLog:
PR ada/114640
* exp_util.adb (Fin
From: Eric Botcazou
The problem is that 'Wide_Wide_Value is piggybacked on 'Value and the latter
invokes System.Val_Util.Normalize_String, which incorrectly normalizes the
input string in the presence of enumeration literals with wide characters.
gcc/ada/ChangeLog:
PR ada/115507
From: Eric Botcazou
It is very confusing for the user because it does not make any reference
to the source code but only to details of the underlying implementation.
gcc/ada/ChangeLog:
* gcc-interface/trans.cc (Raise_Error_to_gnu) :
Do not the generate range information if the va
From: Olivier Hainque
The initial signal handling code introduced for aarch64-android
overlooked details of the tasking runtime, not in the initial testing
perimeter.
Specifically, a reference to __gnat_sigtramp from __gnat_error_handler,
initially introduced for the arm port, was prevented if !
Arsen Arsenović writes:
> Ping on this patch.
Hello Arsen, and sorry for taking so long to reply.
The patch is OK for the Ada part.
Cheers,
Marc
Single argument static_assert is C++17 only and breaks the build using
older GCC (prerequisite is C++14).
gcc/ada
* types.h: fix static_assert.
Tested on x86_64-pc-linux-gnu, committed on master.
---
gcc/ada/types.h | 8 +++-
1 file changed, 3 insertions(+), 5 deletions(-)
diff --
---
htdocs/index.html | 4
1 file changed, 4 insertions(+)
diff --git a/htdocs/index.html b/htdocs/index.html
index b303744c..d20c7348 100644
--- a/htdocs/index.html
+++ b/htdocs/index.html
@@ -55,6 +55,10 @@ mission statement.
News
+https://inbox.sourceware.org/gcc/875xparmhn@katap
Samuel Thibault writes:
> I reworked the patch to factorize the bsd signal definitions.
> I have split off the system definitions because the priority range of
> GNU/Mach has diverged from the original BSD kernels.
> gcc/ada/ChangeLog | 17 ++
Hello,
The changes lo
From: Piotr Trojanek
Code cleanup; semantics is unaffected.
gcc/ada/ChangeLog:
* sem_res.adb (In_Decl): Rename and move local variable where
it is used.
Tested on x86_64-pc-linux-gnu, committed on master.
---
gcc/ada/sem_res.adb | 16
1 file changed, 8 insert
From: Javier Miranda
When a derived tagged type implements interface types in addition
to deriving from its parent type, and a primitive inherited from
its parent type corresponds to an inherited primitive that has
class-wide preconditions, then the generated code fails to check
the class-wide pr
From: Piotr Trojanek
Resolution of binary and unary intrinsic operators differed when
expansion was inactive. In particular, this affected GNATprove
handling of Ada.Real_Time."abs" operator. This patch makes unary
resolution behave like binary resolution.
gcc/ada/ChangeLog:
* sem_res.ad
From: Piotr Trojanek
Code cleanup.
gcc/ada/ChangeLog:
* exp_ch4.adb (Expand_N_Op_Multiply): Remove extra whitespace.
Tested on x86_64-pc-linux-gnu, committed on master.
---
gcc/ada/exp_ch4.adb | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/gcc/ada/exp_ch4.a
From: Piotr Trojanek
By declaring access parameter with non-null qualifier, the compiler
should avoid generating run-time checks in debug builds, resulting in
a tiny performance improvement.
Code cleanup; semantics is unaffected.
gcc/ada/ChangeLog:
* sem_res.adb (Type_In_P): Add non-nu
From: Claire Dross
The formal containers have been part of the SPARK library for some
time now. However, some units used only by these containers are still
part of the gnat repository. Move them to the SPARK library.
gcc/ada/ChangeLog:
* Makefile.rtl: Remove references to moved units.
From: Ronan Desplanques
The primary motivation for this change is making the taskset command
line tool work as expected for tasking programs that don't use features
from section D.16 of the Ada reference manual. A couple of components
are added to the ATCB record to make it possible to tell value
From: Piotr Trojanek
Code cleanup and tiny performance improvement; semantics is unaffected.
gcc/ada/ChangeLog:
* exp_ch4.adb (Expand_N_Op_Subtract): Replace numeric literal
with universal integer constant, just like it is done in
expansion of addition operator.
Tested
From: Eric Botcazou
They are related to the special support for text encoding on Windows.
gcc/ada/ChangeLog:
* adaint.c: Replace initialize.c with rtinit.c in comment.
* sysdep.c (__gnat_set_mode): Fix reference in comment.
* libgnat/i-cstrea.ads (Content_Encoding): Adju
From: Viljar Indus
Add an invocation node to the SARIF report that contains the
command line use to activate gnat and whether the execution was
successful or not.
gcc/ada/ChangeLog:
* diagnostics-sarif_emitter.adb (Print_Runs): Add printing for
the invocation node that consists
From: Daniel King
Exception declarations require elaboration on the full run-time to
register the exceptions. The package Interfaces.CHERI, however, is
used on bare-metal targets during early initialization, before
elaboration and is therefore marked No_Elaboration_Code_All.
Refactoring the excep
From: Eric Botcazou
The front-end raises Program_Error on an alignment clause for a type in a
generic unit that references the alignment of another type in the unit.
gcc/ada/ChangeLog:
PR ada/117051
* freeze.adb (Freeze_Entity): Call the layout procedure on subtypes
decl
From: Piotr Trojanek
When uninstalling private package declarations we must mark Taft
amendment types hidden, just like we mark other types.
Looking at previous revisions of this code, it is quite clear that this
bug comes from a code evolution and marking types should happen in all
ELSE branche
From: Eric Botcazou
The existing comment is a bit too vague.
gcc/ada/ChangeLog:
* exp_aggr.ads (Is_Two_Pass_Aggregate): Beef up comment.
Tested on x86_64-pc-linux-gnu, committed on master.
---
gcc/ada/exp_aggr.ads | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/
From: Javier Miranda
When the type imposed by the context for an interpolated string is
constrained, the compiler silently omits adding a runtime check.
gcc/ada/ChangeLog:
* exp_ch2.adb (Expand_N_Interpolated_String_Literal): Use the
base type of the type imposed by the context
From: Daniel King
SIGPROT is a new signal on CheriBSD that signals a CHERI protection violation.
The full runtime converts these to the appropriate Ada exception declared in
Interfaces.CHERI.Exceptions.
gcc/ada/ChangeLog:
* Makefile.rtl: Build support for Morello CheriBSD.
* lib
From: Viljar Indus
Imporve the wording to explicitly state which options are turned on
by -gnatVa and that -gnatVd is enabled by default.
It can be somewhat hard to decifer that information from the old
wording. Especially when compared to -gnatWxx switches where there
is an elaborate scheme for
From: Ronan Desplanques
Before this patch, nothing was reported to the user when an exception
was raised during generation of a minimal reproducer. This patch fixes
this.
gcc/ada/ChangeLog:
* comperr.adb (Compiler_Abort): Display message in exception handler.
Tested on x86_64-pc-linux-
From: Raphaël AMIARD
gcc/ada/ChangeLog:
* doc/gnat_rm/gnat_language_extensions.rst: Adjust documentation.
* gnat_rm.texi: Regenerate.
* gnat_ugn.texi: Regenerate.
Tested on x86_64-pc-linux-gnu, committed on master.
---
.../doc/gnat_rm/gnat_language_extensions.rst | 14
From: Eric Botcazou
It has gone unnoticed for decades because it changes nothing in practice.
gcc/ada/ChangeLog:
* gcc-interface/trans.cc (process_decls): Remove tests on Nkind that
contain a typo and would be redundant if written correctly.
Tested on x86_64-pc-linux-gnu, commi
From: Eric Botcazou
The problem is that the freeze node for the type of the element ends up in
the component list of the record type declared with the default value.
gcc/ada/ChangeLog:
PR ada/113036
* freeze.adb (Freeze_Expression): Deal with freezing actions coming
from
From: Raphaël AMIARD
gcc/ada/ChangeLog:
* sem_prag.adb (Analyze_Pragma): Fix format for second line of
warning (should be a continuation line)
Tested on x86_64-pc-linux-gnu, committed on master.
---
gcc/ada/sem_prag.adb | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
di
From: Viljar Indus
gcc/ada/ChangeLog:
* diagnostics-sarif_emitter.adb (Print_SARIF_Report): Add a
Schema field to the SARIF report.
Tested on x86_64-pc-linux-gnu, committed on master.
---
gcc/ada/diagnostics-sarif_emitter.adb | 14 +-
1 file changed, 13 insertions(
From: Piotr Trojanek
Intrinsic operators are resolved by rewriting into a corresponding
operator from the Standard package. Traversing homonyms just to find the
corresponding operator was not particularly efficient; also, for the
binary "-" it was finding the unary "-".
There appears to be no di
From: Bob Duff
The Library_Unit field was used for all sorts of different purposes,
which led to confusing code.
This patch splits Library_Unit into much more specific wrapper
subprograms that should be called instead of [Set_]Library_Unit.
Predicates and pragmas Assert are used to catch misuses
From: Daniel King
gcc/ada/ChangeLog:
* Makefile.rtl: Use s-secsta__cheri.adb on Morello CheriBSD.
* libgnat/s-secsta__cheri.adb: New file.
Tested on x86_64-pc-linux-gnu, committed on master.
---
gcc/ada/Makefile.rtl|3 +-
gcc/ada/libgnat/s-secsta__cheri.adb
From: Eric Botcazou
The resolution status of Resolve_Aggr_Expr is lost when the routine is
invoked indirectly from Resolve_Iterated_Component_Association.
gcc/ada/ChangeLog:
* sem_aggr.adb (Resolve_Iterated_Component_Association): Change to
function returning Boolean and return
From: Bob Duff
Follow-on to previous change "Disable self-referential with_clauses",
which caused some regressions. Remove useless use clauses referring
to useless self-referential with'ed packages. This is necessary
because in some cases, such use clauses cause the compiler to
crash or give spur
From: Nicolas Roche
Improve performance of iteration using Element function.
Improve performance of Append.
gcc/ada/ChangeLog:
* libgnat/a-strunb__shared.adb: Restructure code to inline only
the most common cases. Remove whenever possible runtime checks.
* libgnat/a-stru
From: Piotr Trojanek
Previously the lower bound of string literals indexed by non-static
integer types was artificially set to 1 in the frontend. This was to
avoid an overflow in calculation of a null string size by the GCC
backend, which was causing an excessively large binary object file.
Howe
From: Eric Botcazou
It dates back to when analysis was performed on a copy of the expression.
gcc/ada/ChangeLog:
* sem_aggr.adb (Resolve_Iterated_Component_Association): Move up
declaration of Expr and remove dead code from older processing.
Tested on x86_64-pc-linux-gnu, commi
701 - 800 of 2281 matches
Mail list logo