I think this is used to avoid warnings from less sophisticated analysis. It seems to be used quite a bit in the git source, anyway. In the attached file the warning ought to be on the condition, since there the code clearly is using garbage/undefined values.
However, clang warns on the declaration/initialisation, and I think it should not. In this specific case I think the initialisation should just be ignored.
Extended Description
I think this is used to avoid warnings from less sophisticated analysis. It seems to be used quite a bit in the git source, anyway. In the attached file the warning ought to be on the condition, since there the code clearly is using garbage/undefined values.
However, clang warns on the declaration/initialisation, and I think it should not. In this specific case I think the initialisation should just be ignored.