-
Notifications
You must be signed in to change notification settings - Fork 10.5k
[NFC] Centralize TypeChecker Flags With TypeCheckerOptions #28173
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
Conversation
@swift-ci please test |
Function body skipping stuff looks god, but why do all those tests now need |
For some reason, we're actually emitting the "You can't use @objc without Foundation" diagnostic for these now. I suspect it's because something was calling |
Could we pass |
@theblixguy Good point. I'll push this through once the tests pass |
Build failed |
fd431dd
to
9bcad43
Compare
@swift-ci please test |
Some other things we might want to move over from LangOptions:
|
9bcad43
to
169c504
Compare
@swift-ci please test |
169c504
to
6b0c37c
Compare
@swift-ci please smoke test |
@swift-ci please smoke test |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Parser related changes LGTM.
De-duplicate TypeCheckingFlags, TypeChecker's Options, and the TypeChecker-Oriented FrontendOptions into a dedicated TypeCheckerOptions type. This moves a bunch of configuration state out of the type checker and into the ASTContext where it belongs.
Strip TypeChecker of all of this state.
34abe6d
to
6a164ce
Compare
@swift-ci please smoke test |
6a164ce
to
7be6785
Compare
7be6785
to
8ff60ab
Compare
@swift-ci please smoke test |
⛵️ |
Merge TypeCheckingFlags, TypeChecker's Options and the TypeChecker-Oriented FrontendOptions into (the one true heir)
TypeCheckerOptions
.Use this to simplify a bunch of things that only needed type checkers just for this bit of state and, importantly, pull all of this out of the TypeChecker.
@davidungar Could you make sure I haven't done something terrible to frontend argument parsing?
@harlanhaskins Same, but for function body skipping?
@rintaro For the ParserUnit parts (particularly the
llvm::SaveAndRestore
s to emulate the old behavior of passingNone
to the options).