{"action":"created","issue":{"url":"https://api.github.com/repos/apple/swift/issues/5498","repository_url":"https://api.github.com/repos/apple/swift","labels_url":"https://api.github.com/repos/apple/swift/issues/5498/labels{/name}","comments_url":"https://api.github.com/repos/apple/swift/issues/5498/comments","events_url":"https://api.github.com/repos/apple/swift/issues/5498/events","html_url":"https://github.com/apple/swift/pull/5498","id":185722310,"number":5498,"title":"IRGen: Derive the proper formal Self type for @convention(*method) methods on Optional.","user":{"login":"jckarter","id":147281,"avatar_url":"https://avatars.githubusercontent.com/u/147281?v=3","gravatar_id":"","url":"https://api.github.com/users/jckarter","html_url":"https://github.com/jckarter","followers_url":"https://api.github.com/users/jckarter/followers","following_url":"https://api.github.com/users/jckarter/following{/other_user}","gists_url":"https://api.github.com/users/jckarter/gists{/gist_id}","starred_url":"https://api.github.com/users/jckarter/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jckarter/subscriptions","organizations_url":"https://api.github.com/users/jckarter/orgs","repos_url":"https://api.github.com/users/jckarter/repos","events_url":"https://api.github.com/users/jckarter/events{/privacy}","received_events_url":"https://api.github.com/users/jckarter/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":7,"created_at":"2016-10-27T16:44:20Z","updated_at":"2016-10-27T17:34:41Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/apple/swift/pulls/5498","html_url":"https://github.com/apple/swift/pull/5498","diff_url":"https://github.com/apple/swift/pull/5498.diff","patch_url":"https://github.com/apple/swift/pull/5498.patch"},"body":"Now that Optional's type parameter can be lowered, we can't make the assumption that a substituted nominal type in SIL is usable as-is as a formal type. At this moment, we can at least still rely on the fact that only nominals have methods, so we can at least go up to the original unsubstituted function type, extract the Self type from there, and do formal AST type substitution on it. This is still only a stopgap solution that wouldn't necessarily work once we start allowing conformances to be added to structural types, or even constrained extensions on Optional such as 'extension <T: class, U: class> Optional<(T) -> U>, but is good enough to fix SR-3021 for the language today. We would need something like the \"substituted generic signature\" concept to fully fix this."},"comment":{"url":"https://api.github.com/repos/apple/swift/issues/comments/256715668","html_url":"https://github.com/apple/swift/pull/5498#issuecomment-256715668","issue_url":"https://api.github.com/repos/apple/swift/issues/5498","id":256715668,"user":{"login":"im-vaibhav","id":22931069,"avatar_url":"https://avatars.githubusercontent.com/u/22931069?v=3","gravatar_id":"","url":"https://api.github.com/users/im-vaibhav","html_url":"https://github.com/im-vaibhav","followers_url":"https://api.github.com/users/im-vaibhav/followers","following_url":"https://api.github.com/users/im-vaibhav/following{/other_user}","gists_url":"https://api.github.com/users/im-vaibhav/gists{/gist_id}","starred_url":"https://api.github.com/users/im-vaibhav/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/im-vaibhav/subscriptions","organizations_url":"https://api.github.com/users/im-vaibhav/orgs","repos_url":"https://api.github.com/users/im-vaibhav/repos","events_url":"https://api.github.com/users/im-vaibhav/events{/privacy}","received_events_url":"https://api.github.com/users/im-vaibhav/received_events","type":"User","site_admin":false},"created_at":"2016-10-27T17:34:40Z","updated_at":"2016-10-27T17:34:40Z","body":"Hi,\nI am new here.\nI am a sophomore at IIT Kharagpur, India\nI want to contribute.\nPlease, can someone help me out on where to start from? I am having a hard\ntime figuring it out.\n\nOn Thu, Oct 27, 2016 at 10:19 PM, swift-ci <notifications@github.com> wrote:\n\n> *Build failed*\n> Jenkins build - Swift Test Linux Platform\n> <https://ci.swift.org/job/swift-PR-Linux/4229/>\n> Git Commit - 5e36cd4\n> <https://github.com/apple/swift/commit/5e36cd4c1f82ca4f317ca967d51b2c01f1acec58>\n> Test requested by - @jckarter <https://github.com/jckarter>\n>\n> —\n> You are receiving this because you are subscribed to this thread.\n> Reply to this email directly, view it on GitHub\n> <https://github.com/apple/swift/pull/5498#issuecomment-256702672>, or mute\n> the thread\n> <https://github.com/notifications/unsubscribe-auth/AV3mfT4Ceez-QYIGFYmUapDtlQgnYCE_ks5q4NYVgaJpZM4Kik2b>\n> .\n>\n"}}
{"actor":{"display_login":"im-vaibhav"}}