-
Notifications
You must be signed in to change notification settings - Fork 10.5k
[Stdlib] Rename AnyKeyPath's ObjC name and _VaListBuilder to avoid conflicts with older stdlibs. #21127
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
[Stdlib] Rename AnyKeyPath's ObjC name and _VaListBuilder to avoid conflicts with older stdlibs. #21127
Conversation
@swift-ci please test |
stdlib/public/core/VarArgs.swift
Outdated
@@ -423,9 +423,12 @@ extension Float80 : CVarArg, _CVarArgAligned { | |||
|
|||
/// An object that can manage the lifetime of storage backing a | |||
/// `CVaListPointer`. | |||
// NOTE: older runtimes called this __VaListBuilder. The two must |
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.
You've put an extra underscore in the comment…
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.
Argh.
@@ -604,3 +604,5 @@ Var String.Index._utf16Index has been removed (deprecated) | |||
|
|||
Func MutableCollection.withContiguousMutableStorageIfAvailable(_:) has been added as a protocol requirement | |||
Func Sequence.withContiguousStorageIfAvailable(_:) has been added as a protocol requirement | |||
|
|||
Class AnyKeyPath is now with @objc |
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.
Oh wait, this is a problem after all, because we don't want people using it in @objc
methods. :-(
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.
Whoops. Do we have another way to rename the ObjC side without actually making it @objc
?
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.
Hm. We have an implementation of something like that for classes with generic ancestry called ObjCRuntimeNameAttr, but you can't actually write that in source right now. We might need a compiler change here.
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.
Simple changes are never simple, huh. Thanks for the pointer, I’ll look into that.
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.
I just pushed an update to make @_objcRuntimeName
a usable attribute and use it for this. Hopefully I didn't embarrass myself too badly with the parser modifications. The result is, I believe, what we want now.
811e3ea
to
27bcb65
Compare
Build failed |
…nflicts with older stdlibs. rdar://problem/46546165
rdar://problem/46546165
27bcb65
to
7f40c7c
Compare
… rename. rdar://problem/46546165
7f40c7c
to
6b94802
Compare
Parser changes look fine to me! It would be nice™ to have an IRGen test that shows this is working, but I guess the testing you're doing on the standard library is confirming that too. |
rdar://problem/46546165
It is, but a real test seems like a good idea too. Added. |
@swift-ci please test |
Build failed |
Build failed |
rdar://problem/46546165