]> git.ipfire.org Git - thirdparty/gcc.git/commit
ada: Fix resolving tagged operations in array aggregates
authorViljar Indus <indus@adacore.com>
Fri, 9 Feb 2024 10:29:41 +0000 (12:29 +0200)
committerMarc Poulhiès <poulhies@adacore.com>
Thu, 16 May 2024 08:49:29 +0000 (10:49 +0200)
commitb98e256652c336160afa47bf8735eb4aa3529135
treed3634171d086a2bb90de8fca8600234e5cd0e71d
parent81a5815a48b0d392de7ece86bdcc23a2d72aa5bd
ada: Fix resolving tagged operations in array aggregates

In the Two_Pass_Aggregate_Expansion we were removing
all of the entity links in the Iterator_Specification
to avoid reusing the same Iterator_Definition in both
loops.

However this approach was also breaking the links to
calls with dot notation that had been transformed to
the regular call notation.

In order to circumvent this, explicitly create new
identifier definitions when copying the
Iterator_Specfications for both of the loops.

gcc/ada/

* exp_aggr.adb (Two_Pass_Aggregate_Expansion):
Explicitly create new Defining_Iterators for both
of the loops.
gcc/ada/exp_aggr.adb