Skip to content

Disambiguation #16312

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 2, 2018
Merged

Disambiguation #16312

merged 3 commits into from
May 2, 2018

Conversation

compnerd
Copy link
Member

@compnerd compnerd commented May 2, 2018

Replace this paragraph with a description of your changes and rationale. Provide links to external references/discussions if appropriate.

Resolves SR-NNNN.

compnerd added 3 commits May 2, 2018 10:48
Rename `Base` to `InstBase`.  This is needed to help MSVC disambiguate
the typename from the enumerator member in certain specializations.  The
SILInstruction is used in LLDB and when building with MSVC would fail
due to an ambiguous resolution.
The class contains two inline operator overloads which are marked as
friends.  These overloads actually will be promoted to a global
function.  MSVC will not mark them as friends resulting in access to the
members being lost.  Explicitly mark the overloads as friends.  This is
needed by LLDB.
swift::detail is ambiguous when building lldb for MSVC.  It is unable to
disambiguate between `lldb::swift::detail` and `swift::detail`.
Explicitly qualify the namespace to help it disambiguate it.
@compnerd
Copy link
Member Author

compnerd commented May 2, 2018

CC: @dcci - helps get swift-lldb building on Windows! (@jrose-apple - you might care too :-))

@compnerd
Copy link
Member Author

compnerd commented May 2, 2018

@swift-ci please test

@compnerd compnerd merged commit 3a99f3b into swiftlang:master May 2, 2018
@compnerd compnerd deleted the disambiguation branch May 2, 2018 22:14
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