Skip to content

Named lazy member loading write by default #12741

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

Conversation

graydon
Copy link
Contributor

@graydon graydon commented Nov 3, 2017

This turns on @DougGregor's suggestion that we write the name lookup tables by default and only control their use by the command line flag.

Also fixes one class of bugs (of the ~35 remaining bugs) where named lazy loading doesn't quite work at runtime. Getting closer!

@graydon
Copy link
Contributor Author

graydon commented Nov 3, 2017

@swift-ci please test and merge

@graydon
Copy link
Contributor Author

graydon commented Nov 3, 2017

Ugh, no, this is wrong; getMembers() on extensions will add them to the extended type's IDC list. Will revisit tomorrow.

@graydon graydon closed this Nov 3, 2017
@graydon graydon deleted the named-lazy-member-loading-write-by-default branch November 3, 2017 08:44
@swift-ci swift-ci merged commit 2d0ed92 into swiftlang:master Nov 3, 2017
@graydon
Copy link
Contributor Author

graydon commented Nov 4, 2017

Eh, on second thought this is guarded by E->wasDeserialized(), which means the members are already added if the extended type has an IDC list (and it's guarded by nominal->LookupTable.getPointer() in ExtensionDecl::addedMember anyways). I think this is ok.

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.

2 participants