https://gcc.gnu.org/bugzilla/show_bug.cgi?id=57832
--- Comment #6 from Martin Sebor <msebor at gcc dot gnu.org> --- In the reduced test cases (in comment #3 and comment #4) d is a global variable so it's value is zero. c is assigned in the first iteration of the loop (when e is zero) and used in subsequent iterations when it has a defined value, so the warning .seems like a clear false postive to me. (I didn't look at the big test case.)