Skip to content

Improve TBD validation logic #9884

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 3 commits into from
May 24, 2017
Merged

Improve TBD validation logic #9884

merged 3 commits into from
May 24, 2017

Conversation

huonw
Copy link
Contributor

@huonw huonw commented May 23, 2017

This restricts the validation of TBD to cases when we know that SIL/IR is entirely computed from AST (from which we compute the list of symbols), rather than situations when, say, compiling IR/SIL directly, or a SIB file which may also include SIL.

Additionally, split -validation-tbd-against-ir to be able allow the TBD to have extra symbols, letting us ensure that we include everything without having to ensure that we don't include extraneous ones (missing symbols is worse than extra symbols).

huonw added 3 commits May 19, 2017 18:36
It can now:

- not validate (=none)
- validate that all symbols in the IR are also in the TBD (=missing),
- validate the above, and also that all in the TBD are in the IR (=all).

The first and last were switched between with the old boolean flag, the
second is new.
SIB files may have "manually" added SIL, in which case the TBD computed
from the AST will be missing some symbols: those defined only in the
SIL.
@huonw
Copy link
Contributor Author

huonw commented May 23, 2017

@swift-ci Please smoke test

@huonw huonw merged commit a6e1734 into swiftlang:master May 24, 2017
@huonw huonw deleted the symbol-list-8 branch May 24, 2017 18:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant