http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52718
--- Comment #20 from Manuel López-Ibáñez <manu at gcc dot gnu.org> 2012-11-01 23:23:41 UTC --- (In reply to comment #19) > Reported as bug 55173. I'm not going to claim to understand bug 43486 > sufficiently to know it is the same issue, but if you are sure, please feel > free to close as duplicate. Well, it is the same underlying issue. It could be worked-around case by case by passing "some" location (like the = location) down to the warning point. But this is likely quite a large refactoring. The alternative is some general infrastructure like the one proposed in: http://gcc.gnu.org/ml/gcc-patches/2012-09/msg01222.html, which would require an even more massive refactoring to be useful. In fact, that particular proposal would still require to pass down an explicit location, because it does not actually add locations to constants, but stores their location together with the assignment expression (and the assignment expression is not passed down to the point of warning, only the without-location constant).