Skip to content

[pull] swiftwasm from master #985

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 24 commits into from
May 13, 2020
Merged

[pull] swiftwasm from master #985

merged 24 commits into from
May 13, 2020

Conversation

pull[bot]
Copy link

@pull pull bot commented May 13, 2020

See Commits and Changes for more details.


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

aschwaighofer and others added 24 commits May 12, 2020 12:20
…rmance

So it is not always correct to use the current conformance when substituting.

rdar://62894495
Remove all assertions from `AnyFunctionType::getAutoDiffDerivativeFunctionLinearMapType`.
All error cases are represented by `DerivativeFunctionTypeError` now.

Fix `DerivativeFunctionTypeError` error payloads and improve error case naming.
for fast completions. Options may affect the parsing result.
Also, don't collect interface hash tokens inside inactive blocks.
Register DynamicSubscriptExpr's index expression
as a call argument in MiscDiagnostics to avoid it
being diagnosed as a single element labelled tuple.

Resolves SR-12799.
Previously we could allow such a declaration to be
marked @objc, despite being incompatible. This
caused crashes later down the pipeline as the
subscript's accessors were correctly checked for
generic params and were not marked @objc.

Resolves SR-12801.
Previously we would always consider an AnyObject
subscript lookup to be ambiguous if there was a
candidate in both a class and protocol, even if
the selectors and types matched. This was due to
the protocol's generic signature preventing the
signatures from being coalesced.

Tweak the logic to strip generic signatures when
comparing for AnyObject lookup, matching what we
do for @objc methods.

Resolves SR-8611.
Resolves rdar://43645564 & rdar://62906344.
There's no longer a technical reason to do this, but it helps
with crash analytics because AST crashes are less likely to
end up happening during index emission.
Unify type-checking using `AnyFunctionType::getAutoDiffDerivativeFunctionLinearMapType`.
Delete `checkDifferentiabilityParameters` helper, which is subsumed.
Update tests with minor diagnostic changes.
[Type-checker] Improve diagnostic for keypath used without 'keyPath:' label
…ype-calculation

[AutoDiff] Clean up derivative type calculation.
* Classify C++ structs as loadable or address-only

C++ structs are only loadable if they are trivially copyable.

Resolves SR-12472.
There are a set of headers shared between the Swift compiler and the
runtime.  Ensure that we explicitly use `llvm::ArrayRef` rather than
`ArrayRef` which is aliased to `::llvm::ArrayRef`.  Doing so enables us
to replace the `ArrayRef` with an inline namespaced version fixing ODR
violations when the swift runtime is loaded into an address space with
LLVM.
…config

[CodeCompletion] Inherit options when parsing new buffer
The space engine goes out of its way to rewrite OptionalSome patterns
using the postfix-? sugar into .some(...). Unfortunately, it performed
the following remapping:

(x, y, z, ...)? -> .some(x, y, z, ...)

This syntactic form used to behave correctly. However, we are no longer
flattening nested tuples so the correct rewrite is:

(x, y, z, ...)? -> .some((x, y, z))

Correct this space projection rule.

rdar://62200966
runtime: explicitly namespace ArrayRef in shared headers
[Sema] Forbid leaking implementation-only imported types in SPI decls
…ex-change

Frontend: Go back to emitting index data after IRGen
…nformance_subst

Existentials don't always conform to a protocol via an abstract confo…
Adapt to Tuple-In-OptionalSome Patterns in Space Projection
@MaxDesiatov MaxDesiatov merged commit 5de0615 into swiftwasm May 13, 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.