https://gcc.gnu.org/bugzilla/show_bug.cgi?id=55252
--- Comment #19 from Dodji Seketeli <dodji at gcc dot gnu.org> --- (In reply to Tom Tromey from comment #16) > I've tripped across this enough that I've actually filed dups twice now. > > I think it would be best to change the ordering here. > That is, the initial error ought to generally be the > location of the outermost expansion. Then, the remaining > notes ought to delineate the macro expansions. > > While it is true that this will yield a sub-optimal result in some > cases, I think that it will have better results in the preponderance > of cases. That is, there's no way to be perfect here but gcc could be more > useful. I am starting to think the same here. In the unwinding, it seems less surprising to start from the code the user has the most chance to have written herself, that is, the code at the point of expansion of the outermost macro, rather than the point where the offending token was spelled -- which can be hidden anywhere. If everyone agrees, then I am okay to change the unwinding direction for the next stage 1. Manuel, Jonathan, what do you think?