-
Notifications
You must be signed in to change notification settings - Fork 10.6k
Description
Previous ID | SR-14507 |
Radar | rdar://problem/76852457 |
Original Reporter | @johnno1962 |
Type | Bug |
Status | Resolved |
Resolution | Won't Do |
Additional Detail from JIRA
Votes | 0 |
Component/s | Compiler |
Labels | Bug |
Assignee | None |
Priority | Medium |
md5: 8a97fb438d86d022aa112624485f5953
Issue Description:
Hi Apple,
The symbols for default argument generators have been historically given "hidden" visibility, presumably as a way they don't get included in Swift's exported ABI even though in a real sense they are part of Swift's ABI that has to be kept stable. I made a PR mentioning this #33452 but it never received any visibility apart from a couple of drive by thumbs up.
This causes a problem for me trying to maintain a project for "hot reloading" Swift implementations as when a user updates a source file using a default argument to be reloaded using a .dylib it fails as "hidden" symbols are not available to the dynamic loader:
johnno1962/InjectionIII#201 (comment)
I have a work-around of sorts retrospectively patching object files to "unhide" these symbols but it would be better for users and in a sense more consistent if someday these symbols weren't emitted "hidden" by the compiler. I don't expect this to change but I'm raising an issue in the hope someone at least thinks about this.