{"action":"created","issue":{"url":"https://api.github.com/repos/apple/swift/issues/18334","repository_url":"https://api.github.com/repos/apple/swift","labels_url":"https://api.github.com/repos/apple/swift/issues/18334/labels{/name}","comments_url":"https://api.github.com/repos/apple/swift/issues/18334/comments","events_url":"https://api.github.com/repos/apple/swift/issues/18334/events","html_url":"https://github.com/apple/swift/pull/18334","id":345500380,"node_id":"MDExOlB1bGxSZXF1ZXN0MjA0NjIzNzU0","number":18334,"title":"Update the ABI for uniquing foreign type metadata","user":{"login":"rjmccall","id":793869,"node_id":"MDQ6VXNlcjc5Mzg2OQ==","avatar_url":"https://avatars1.githubusercontent.com/u/793869?v=4","gravatar_id":"","url":"https://api.github.com/users/rjmccall","html_url":"https://github.com/rjmccall","followers_url":"https://api.github.com/users/rjmccall/followers","following_url":"https://api.github.com/users/rjmccall/following{/other_user}","gists_url":"https://api.github.com/users/rjmccall/gists{/gist_id}","starred_url":"https://api.github.com/users/rjmccall/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rjmccall/subscriptions","organizations_url":"https://api.github.com/users/rjmccall/orgs","repos_url":"https://api.github.com/users/rjmccall/repos","events_url":"https://api.github.com/users/rjmccall/events{/privacy}","received_events_url":"https://api.github.com/users/rjmccall/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":3,"created_at":"2018-07-29T04:23:05Z","updated_at":"2018-07-29T05:46:57Z","closed_at":null,"author_association":"MEMBER","pull_request":{"url":"https://api.github.com/repos/apple/swift/pulls/18334","html_url":"https://github.com/apple/swift/pull/18334","diff_url":"https://github.com/apple/swift/pull/18334.diff","patch_url":"https://github.com/apple/swift/pull/18334.patch"},"body":"- `swift_getForeignTypeMetadata` is now a request/response function.\r\n\r\n- The initialization function is now a completion function, and the pointer to it has moved into the type descriptor.\r\n\r\n- The cache variable is no longer part of the ABI; it's an implementation detail of the access function.\r\n\r\n- The two points above mean that there is no special header on foreign type metadata and therefore that they can be marked constant when there isn't something about them that needs to be initialized.\r\n\r\nThe only foreign-metadata initialization we actually do right now is of the superclass field of a foreign class, and since that relationship is a proper DAG, it's not actually possible to have recursive initialization problems.  But this is the right long-term thing to do, and it removes one of the last two clients of once-based initialization.\r\n\r\nI'm calling this part of SR-7876 despite it not actually resolving any real problems because it *is* part of the finishing-recursive-metadata project."},"comment":{"url":"https://api.github.com/repos/apple/swift/issues/comments/408653808","html_url":"https://github.com/apple/swift/pull/18334#issuecomment-408653808","issue_url":"https://api.github.com/repos/apple/swift/issues/18334","id":408653808,"node_id":"MDEyOklzc3VlQ29tbWVudDQwODY1MzgwOA==","user":{"login":"swift-ci","id":15467072,"node_id":"MDQ6VXNlcjE1NDY3MDcy","avatar_url":"https://avatars0.githubusercontent.com/u/15467072?v=4","gravatar_id":"","url":"https://api.github.com/users/swift-ci","html_url":"https://github.com/swift-ci","followers_url":"https://api.github.com/users/swift-ci/followers","following_url":"https://api.github.com/users/swift-ci/following{/other_user}","gists_url":"https://api.github.com/users/swift-ci/gists{/gist_id}","starred_url":"https://api.github.com/users/swift-ci/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/swift-ci/subscriptions","organizations_url":"https://api.github.com/users/swift-ci/orgs","repos_url":"https://api.github.com/users/swift-ci/repos","events_url":"https://api.github.com/users/swift-ci/events{/privacy}","received_events_url":"https://api.github.com/users/swift-ci/received_events","type":"User","site_admin":false},"created_at":"2018-07-29T05:46:57Z","updated_at":"2018-07-29T05:46:57Z","author_association":"CONTRIBUTOR","body":"**Build failed**\n[Swift Test OS X Platform](https://ci.swift.org/job/swift-PR-osx/6538/)\nGit Sha - 994526937df3e333d83f0221abd383f42e98f3ab\n"}}
{"actor":{"display_login":"swift-ci"}}