diff options
Diffstat (limited to 'gold/parameters.cc')
-rw-r--r-- | gold/parameters.cc | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/gold/parameters.cc b/gold/parameters.cc index 5ed1912..15df42a 100644 --- a/gold/parameters.cc +++ b/gold/parameters.cc @@ -297,6 +297,16 @@ set_parameters_options(const General_options* options) void set_parameters_target(Target* target) { + if (parameters->options_valid() && parameters->options().user_set_m()) + { + const char* emulation = parameters->options().m(); + Target* output = select_target_by_emulation(emulation); + if (!output) + gold_error(_("unrecognised output emulation: %s"), emulation); + else if (output != target) + gold_error(_("input file is incompatible with %s output emulation"), + emulation); + } static_parameters.set_target(target); } |