]> git.ipfire.org Git - thirdparty/gcc.git/commit
ada: Fix fallout of change in parameter passing out of aliasing considerations
authorEric Botcazou <ebotcazou@adacore.com>
Wed, 18 Sep 2024 06:24:32 +0000 (08:24 +0200)
committerMarc Poulhiès <dkm@gcc.gnu.org>
Fri, 25 Oct 2024 09:09:03 +0000 (11:09 +0200)
commit11e06dd243ac578f81d435ca0aea2ce3340a0650
tree349265de8750da2609c540f7470a0edc1929b0c3
parentde8d6829371821775183fbf5633cc1e654d96b78
ada: Fix fallout of change in parameter passing out of aliasing considerations

If an actual parameter that is a type conversion is passed by reference but
not addressable, the temporary that is created and whose address is passed
instead may need to be in the target type of the conversion to fulfill the
requirements of strict aliasing.

gcc/ada/ChangeLog:

* gcc-interface/trans.cc (Call_to_gnu): If the formal is passed by
reference and the actual is a type conversion but not addressable,
create the temporary in the target type of the conversion if this
is needed to enforce strict aliasing.
gcc/ada/gcc-interface/trans.cc