mirror of
https://github.com/apple/swift.git
synced 2026-10-08 12:50:50 +02:00
The only known condfail scenario is inheriting from a protocol P that inherits from a reparentable one R. We already guard P if it mentions R in its inheritance clause. So older compilers will simply report that "P" is missing in the interface, which is a better error message than virally guarding everything mentioning P. It's an ABI break anyway to do that without introducing a `@reparented` extension, which needs a guard. In theory, older compilers shouldn't have too much go wrong if they were to ignore `@reparentable`, though the RequirementMachine and witness tables will look different. rdar://174263176
2.8 KiB
2.8 KiB