http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53088
--- Comment #5 from Jan Hubicka <hubicka at gcc dot gnu.org> 2012-04-25 11:21:52 UTC --- Hmm, after some playing with this, I don't really know how to make the warning output right all the time. To fix the regression I will simply update the testcase. The warning now goes on different place because of different gimplification order. We used to first gimplify the call. Now we first gimplify the function and warn on its declaration. It is not bad and the input_location is correctly initialized by cgraph. I do not get any confused carret: a.c: In function 'foo1': a.c:16:1: note: the ABI of passing union with long double has changed in GCC 4.4 foo1 (union un u) ^