Skip to content
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

[pull] master from apple:master #19

Merged
merged 45 commits into from
Jun 12, 2020
Merged

[pull] master from apple:master #19

merged 45 commits into from
Jun 12, 2020

Conversation

pull[bot]
Copy link

@pull pull bot commented Jun 12, 2020

See Commits and Changes for more details.


Created by pull[bot]. Want to support this open source service? Please star it : )

meg-gupta and others added 30 commits June 1, 2020 23:29
…letion

Don't insert CodeCompletionExpr at the cursor position in
"conforming method list" or "typecontext" mode. This increase the chance
of successful type checking.

rdar://problem/63781922
Introduce one-way constraints for the parameters of closures to which a
function builder is being applied. This was an intended part of the
model when one-way constraints were introduced, but somehow got
missed. This should further break up large constraints systems for
faster solving, and *most likely* won't break much source code in
practice.

Fixes rdar://problem/64231116.
…abeledtrailingclosure-rdar63781922

[SourceKit] Disable labeled trailing closure completion support except code completion
… with in_guaranteed parameters.

Because partial_apply consumes it's arguments we need to copy them. This was done for "direct" parameters but not for address parameters.

rdar://problem/64035105
[SIL] NFC: Shrink SILGlobalVariable by 16 bytes
This method's only caller was using this to form a substituted DictionaryType, but also using TypeChecker::applyUnboundGenericArguments. We need to use the latter unconditionally so we actually check the requirements on DictionaryType and emit diagnostics.

Also clean up resolveDictionaryType so it consistently returns ErrorTypes.
Directly return the parameter vector, and handle missing types the same way we handle error types.
Inline it into its only caller
Inline it into its only caller
…rams

[Function builders] Use one-way constraints for closure parameters.
[NFC] Make some PassManager options to accept comma separated values
It was just using them as a currency type because performTypeLocChecking accepted them as a parameter. Cleaning up performTypeLocChecking is something that needs to be done independently of this changeset, so for now just encapsulate the use of TypeLocs as much as possible and use TypeRepr instead.
If a semantic representation of the RequirementRepr is needed, then it should be resolved to a Requirement and printed.
CodaFi and others added 15 commits June 11, 2020 16:18
This method performs a linear-ish search over all the generic requirements and tries to pull out a matching written requirement so it can provide a richer diagnostic. Unpack this search, teach it to walk resolved requirements, and clean up the code here.
There is no need to build a fake RequirementRepr if we can directly represent a the requested AnyObject conformance constraint in the generated generic signature.

This removes the final user of the TypeLoc-bearing constructors of RequirementReprs.
Resolve the written type instead of the semantic type since that's the only data these requests will have access to once RequirementRepr is made completely syntactic.
In preparation for the removal of the TypeLocs here, cache down the resulting Requirement from a RequirementRepr.
Now that the previous commits have removed the data dependencies on TypeLoc, remove the TypeLoc and replace it with a TypeRepr. This makes RequirementRepr a purely syntactic object once again.
These are macros on OpenBSD, which don't get imported to an equivalent
symbol in Swift.
[NFC] CS: Give the type-transforming openUnboundGenericType method a more accurate name
Dependencies: Move YAML reader and writer code to swift-dependency-tool
[NFC] TypeCheckType No Longer Returns Null
[NFC] Make RequirementRepr a Purely Syntactic Object
DepScanner: use emplace_back instead of push_back.
* Fixes loadable edge case for address-only types.
* Re-work, generalize, and simplify by using projections.
* Support `-enable-cxx-interop` in sil-opt.
MandatoryInlining: fix a memory lifetime bug related to partial_apply with in_guaranteed parameters.
[test][stdlib] Define stdio stubs for OpenBSD.
[testing] Workaround unsorted output
@pull pull bot merged commit 8d79ec1 into MaxDesiatov:master Jun 12, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.