mirror of
https://github.com/apple/swift.git
synced 2025-12-21 12:14:44 +01:00
TBD validation is effectively an expensive assertion, and is currently only tuned for Apple platforms. However, we don't want it to regress more, and it would be nice to start getting validation from people using master snapshots. Together, this means that turning it on by default for the cases mentioned above is an appropriate course of action. At the very least, this has the benefit of running validation across the stdlib, the overlays and the whole testsuite on each build, so people making changes to the compiler that change symbols are hopefully alerted. One limitation here is that this is only validating that the TBD is a superset of the true set of symbols: it could include spurious symbols that aren't actually in the binary. This case is less problematic for Swift than symbols missing from the TBD file, and so we've focused energy on this. Once we've fixed the extra-symbols problems and are confident in it, this validation can be upgraded to validate that too. Half of rdar://problem/40431434.