Is "due to current limitations in the borrow checker" overzealous?

It's accurate, but it's not clear.

What it's telling you is that today, fn foo<T>(_:T) where for<'a> T: 'a is the same as fn foo<T>(_:T) where T: 'static. This is the borrow checker limitation the error message references; ideally, for<'a> T: 'a should be more general than T: 'static, as it should accept any value of type T regardless of the lifetime parameter.

However, the borrow checker can't handle this right now - so to get useful features out to everyone, the compiler understands for<'a> T: 'a as a weird way to write T: 'static - and when the borrow checker is improved, it will permit code that doesn't compile today to compile.