Dicebot:
They are orthogonal and not exclusive."declaration foreach" can appear whenever declaration can appear and insert new declarations, contrary to statements of normal foreach. "static foreach" is simply an improvement over existing "tuple foreach concept" which allows it to work with a wider variety of input. Former is about context of foreach itself, latter - about behavior of the loop.
They are the same thing, in Issue 4085 the step n.6 covers that. Bye, bearophile