Assorted UBSAN cleanups
Found the first few from running the io test suite. Will be stuck at https://github.com/pandas-dev/pandas/issues/55111 which requires closer attention than I wanted to tackle here
tests? UBSAN is a runtime check, so all of these were hit from values in the existing test suite. Nothing needs to be added Thanks @WillAyd 