I'm of two minds about this. Crashing is bad, but in this case, it would make it obvious that there is a coding error. We're using nulls to say that there is a non-number in the string, but anything else means we have a problem we need to fix. Returning null would mask this.

It's one of those *it will never happen™* cases. I don't really mind which one we go with.