That is useful from many sides I think.
We probably would want to avoid fatal() if we can in context of librarification,
but for me reason of that patch is to help D27900 go.
D27900 changes errors reporting to something like
error: text1
note: text2
note: text3
where hint used to provide additional information about location. In that case
I can't just call fatal() because user will not see notes after that what adds additional complication to handle.
What is good that Target.cpp looks the only such place and this patch changes it.
Also it adds testcase with broken relocation. Previously we did not have any,
It checks that error() instead of fatal() works fine.