I wonder whether something like this would be better:

``` ruby
rescue NoMethodError => e
  raise e, e.message.sub(time.inspect, self.inspect), e.backtrace
```

that way if something inside of `Time` generates a `NoMethodError` that isn't on the time value it doesn't get masked and we maintain the backtrace information.