https://gcc.gnu.org/bugzilla/show_bug.cgi?id=118726
--- Comment #2 from xiaohuba2021 <xiaohuba2021 at 163 dot com> --- There is a typo in the code mentioned above. The correct version is: ``` #include <iostream> int main() { volatile int x = 10; for (int l = 1; int d = x - l; l = d + 1) { int &z = d; std::cout << z << '\n'; } } ```