{"action":"created","issue":{"url":"https://api.github.com/repos/apple/swift/issues/20888","repository_url":"https://api.github.com/repos/apple/swift","labels_url":"https://api.github.com/repos/apple/swift/issues/20888/labels{/name}","comments_url":"https://api.github.com/repos/apple/swift/issues/20888/comments","events_url":"https://api.github.com/repos/apple/swift/issues/20888/events","html_url":"https://github.com/apple/swift/pull/20888","id":385958584,"node_id":"MDExOlB1bGxSZXF1ZXN0MjM0ODExNTc0","number":20888,"title":"Fixed layout classes should still have resilient vtables [5.0; ABI]","user":{"login":"slavapestov","id":66486,"node_id":"MDQ6VXNlcjY2NDg2","avatar_url":"https://avatars1.githubusercontent.com/u/66486?v=4","gravatar_id":"","url":"https://api.github.com/users/slavapestov","html_url":"https://github.com/slavapestov","followers_url":"https://api.github.com/users/slavapestov/followers","following_url":"https://api.github.com/users/slavapestov/following{/other_user}","gists_url":"https://api.github.com/users/slavapestov/gists{/gist_id}","starred_url":"https://api.github.com/users/slavapestov/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/slavapestov/subscriptions","organizations_url":"https://api.github.com/users/slavapestov/orgs","repos_url":"https://api.github.com/users/slavapestov/repos","events_url":"https://api.github.com/users/slavapestov/events{/privacy}","received_events_url":"https://api.github.com/users/slavapestov/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":5,"created_at":"2018-11-29T22:41:28Z","updated_at":"2018-11-30T00:26:34Z","closed_at":null,"author_association":"MEMBER","pull_request":{"url":"https://api.github.com/repos/apple/swift/pulls/20888","html_url":"https://github.com/apple/swift/pull/20888","diff_url":"https://github.com/apple/swift/pull/20888.diff","patch_url":"https://github.com/apple/swift/pull/20888.patch"},"body":"To achieve this, re-organize the metadata so that the field offset vector comes immediately after the generic parameter area, instead of after the vtable. This means the vtable can change resiliently.\r\n\r\nNote that for non-generic `@_fixed_layout` classes without resiliently-sized fields, field offsets are constant and will be inlined directly, but we need the more general access pattern to work if the `@_fixed_layout` class has generic layout.\r\n\r\nAlso, use method dispatch thunks to call vtable methods instead of accessing the vtable directly, as with resilient classes.\r\n\r\nSince the metadata size is not known at compile time, we use the most general metadata instantiation strategy now."},"comment":{"url":"https://api.github.com/repos/apple/swift/issues/comments/443044988","html_url":"https://github.com/apple/swift/pull/20888#issuecomment-443044988","issue_url":"https://api.github.com/repos/apple/swift/issues/20888","id":443044988,"node_id":"MDEyOklzc3VlQ29tbWVudDQ0MzA0NDk4OA==","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-11-30T00:26:34Z","updated_at":"2018-11-30T00:26:34Z","author_association":"CONTRIBUTOR","body":"**Build failed**\n[Swift Test Linux Platform](https://ci.swift.org/job/swift-PR-Linux/9295/)\nGit Sha - 2c9b62df029cbbff2125486db4d50d5b8325b9d1\n"}}
{"actor":{"display_login":"swift-ci"}}