This patch fixes an array bounds violation with elemental arguments.
This is a regression.
The array bounds variables were used before they were assigned a value.
This is fixed by adding the offending code (dependency code) _after_ the
loop's pre code.
This patch also contains a fix for the fix for PR 38487 which was
supposed to only circumvent the warning, but was also changing the
return value.
As a bonus, it also fixes a function name in the ChangeLog.
Regression tested on x86_64-unknown-linux-gnu. Ok for trunk (and later
4.3?)?