Refactor `cat` and `broadcast_tensors` error handling. (#9704)
This PR refactors the implementation of `cat` and `broadcast_tensors` in
the _tensor_methods.cpp_ file.
In summary:
- Make both of them call `CheckNonEmptyInputs`, returning an error
status on failure
- Factor the other `cat()` error into its own function:
`CheckCatCompatibleShapes`
- Make `broadcast_tensors` use status constructs
Note that there are no tests for these changes because:
- `cat()` is already tested
- `broadcast_tensors()` is used only internally