The type checker makes certain assumptions about the standard library operators to speed up type checking, so occasionally there are differences in behavior.
However, I checked and this example failed in Swift 6.2 but now works in Swift 6.3. It also fails with the same error if I build with the -enable-constraint-solver-performance-hacks flag in Swift 6.3, so indeed it was caused by one of the older optimizations which has been removed (Roadmap for improving the type checker). I'll add your example to the test suite to be sure it won't break again.