The __FILE__ strings will be combined, so you get a most one of it for each object file.
You're right about that. So the increase in size due to fancy_abort will be somewhat less than I previously said. However, it will still be an increase in size, compared with using abort and not cross-jumping. So the conclusion doesn't change: it makes no sense to insist on cross-jumping abort calls to make the binary smaller, and tell the user to deal with the resulting inconvenience with a technique that makes the binary even bigger.