Merge pull request #41885 from JuliaLang/teh/reduce_empty
* Remove unspecialized `reduce_empty`
The fallback definitions of `reduce_empty` and `mapreduce_empty` are
big targets for invalidation, and the benefit they bring is
questionable. Instead of having a dedicated error path, instead we
print a custom `MethodError` hint that is more informative than the
current message.
This fixes ~500 invalidations from DiffEqBase
* Allow specialization in show_convert_error
`arg_types_param` is known to be a `Core.SimpleVector`