sem_res.adb (Resolve_Call): In the part of the code where it is deciding whether...
authorBob Duff <duff@adacore.com>
Mon, 23 Jan 2017 11:13:23 +0000 (11:13 +0000)
committerArnaud Charlet <charlet@gcc.gnu.org>
Mon, 23 Jan 2017 11:13:23 +0000 (12:13 +0100)
commitbe4e989cd110e3eda9b9b14e6d3f73c9408e8816
tree8784926c11173491046562803de287383babcc32
parente3d53f96ed595fd6e8bef75f166a93e5309b0c2a
sem_res.adb (Resolve_Call): In the part of the code where it is deciding whether to turn the call into an...

2017-01-23  Bob Duff  <duff@adacore.com>

* sem_res.adb (Resolve_Call): In the part of the code where
it is deciding whether to turn the call into an indexed
component, avoid doing so if the call is to an instance of
Unchecked_Conversion. Otherwise, the compiler turns it into an
indexed component, and resolution of that turns it back into a
function call, and so on, resulting in infinite recursion.
* sem_util.adb (Needs_One_Actual): If the first formal has a
default, then return False.

From-SVN: r244774
gcc/ada/ChangeLog
gcc/ada/sem_res.adb
gcc/ada/sem_util.adb