------- Comment #10 from jamborm at gcc dot gnu dot org 2010-09-22 15:33 ------- gimple_has_location returns false for the return statement on both i686 and x86_64. When I hacked SRA to set the location of return statement to the location of the preceding statement ("<retval> = res;" or "D.1523 = res;"), the reported lines in the warnings were consistent on both i686 and x86_64 (22 in both cases, of course).
So making sure the two statements both have the location we want to give in the warning is a way of dealing with this issue. To me it even seems they do belong to the same source construct and should have the same location. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45505