{"action":"created","issue":{"url":"https://api.github.com/repos/dotnet/roslyn/issues/7514","labels_url":"https://api.github.com/repos/dotnet/roslyn/issues/7514/labels{/name}","comments_url":"https://api.github.com/repos/dotnet/roslyn/issues/7514/comments","events_url":"https://api.github.com/repos/dotnet/roslyn/issues/7514/events","html_url":"https://github.com/dotnet/roslyn/pull/7514","id":122404667,"number":7514,"title":"Merge TopLevel and MethodBody speculative models","user":{"login":"drognanar","id":3418274,"avatar_url":"https://avatars.githubusercontent.com/u/3418274?v=3","gravatar_id":"","url":"https://api.github.com/users/drognanar","html_url":"https://github.com/drognanar","followers_url":"https://api.github.com/users/drognanar/followers","following_url":"https://api.github.com/users/drognanar/following{/other_user}","gists_url":"https://api.github.com/users/drognanar/gists{/gist_id}","starred_url":"https://api.github.com/users/drognanar/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/drognanar/subscriptions","organizations_url":"https://api.github.com/users/drognanar/orgs","repos_url":"https://api.github.com/users/drognanar/repos","events_url":"https://api.github.com/users/drognanar/events{/privacy}","received_events_url":"https://api.github.com/users/drognanar/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/dotnet/roslyn/labels/Area-Compilers","name":"Area-Compilers","color":"5319e7"},{"url":"https://api.github.com/repos/dotnet/roslyn/labels/Area-Interactive","name":"Area-Interactive","color":"5319e7"},{"url":"https://api.github.com/repos/dotnet/roslyn/labels/cla-already-signed","name":"cla-already-signed","color":"009800"}],"state":"open","locked":false,"assignee":{"login":"gafter","id":3804346,"avatar_url":"https://avatars.githubusercontent.com/u/3804346?v=3","gravatar_id":"","url":"https://api.github.com/users/gafter","html_url":"https://github.com/gafter","followers_url":"https://api.github.com/users/gafter/followers","following_url":"https://api.github.com/users/gafter/following{/other_user}","gists_url":"https://api.github.com/users/gafter/gists{/gist_id}","starred_url":"https://api.github.com/users/gafter/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gafter/subscriptions","organizations_url":"https://api.github.com/users/gafter/orgs","repos_url":"https://api.github.com/users/gafter/repos","events_url":"https://api.github.com/users/gafter/events{/privacy}","received_events_url":"https://api.github.com/users/gafter/received_events","type":"User","site_admin":false},"milestone":{"url":"https://api.github.com/repos/dotnet/roslyn/milestones/4","html_url":"https://github.com/dotnet/roslyn/milestones/1.2","labels_url":"https://api.github.com/repos/dotnet/roslyn/milestones/4/labels","id":937402,"number":4,"title":"1.2","description":"This is our 1.2 Milestone.\r\n\r\n<!---\r\n@huboard:{\"order\":2.0}\r\n-->\r\n","creator":{"login":"jaredpar","id":146967,"avatar_url":"https://avatars.githubusercontent.com/u/146967?v=3","gravatar_id":"","url":"https://api.github.com/users/jaredpar","html_url":"https://github.com/jaredpar","followers_url":"https://api.github.com/users/jaredpar/followers","following_url":"https://api.github.com/users/jaredpar/following{/other_user}","gists_url":"https://api.github.com/users/jaredpar/gists{/gist_id}","starred_url":"https://api.github.com/users/jaredpar/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jaredpar/subscriptions","organizations_url":"https://api.github.com/users/jaredpar/orgs","repos_url":"https://api.github.com/users/jaredpar/repos","events_url":"https://api.github.com/users/jaredpar/events{/privacy}","received_events_url":"https://api.github.com/users/jaredpar/received_events","type":"User","site_admin":false},"open_issues":580,"closed_issues":263,"state":"open","created_at":"2015-01-15T20:48:55Z","updated_at":"2015-12-16T21:10:28Z","due_on":null,"closed_at":null},"comments":6,"created_at":"2015-12-16T01:12:10Z","updated_at":"2015-12-16T23:17:33Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/dotnet/roslyn/pulls/7514","html_url":"https://github.com/dotnet/roslyn/pull/7514","diff_url":"https://github.com/dotnet/roslyn/pull/7514.diff","patch_url":"https://github.com/dotnet/roslyn/pull/7514.patch"},"body":"Combines top level and method body semantic model classes.\r\nIn effect the speculative model for top level code is not null.\r\nThis enables top level analysis for top level scope such as type simplifications."},"comment":{"url":"https://api.github.com/repos/dotnet/roslyn/issues/comments/165283454","html_url":"https://github.com/dotnet/roslyn/pull/7514#issuecomment-165283454","issue_url":"https://api.github.com/repos/dotnet/roslyn/issues/7514","id":165283454,"user":{"login":"mavasani","id":10605811,"avatar_url":"https://avatars.githubusercontent.com/u/10605811?v=3","gravatar_id":"","url":"https://api.github.com/users/mavasani","html_url":"https://github.com/mavasani","followers_url":"https://api.github.com/users/mavasani/followers","following_url":"https://api.github.com/users/mavasani/following{/other_user}","gists_url":"https://api.github.com/users/mavasani/gists{/gist_id}","starred_url":"https://api.github.com/users/mavasani/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mavasani/subscriptions","organizations_url":"https://api.github.com/users/mavasani/orgs","repos_url":"https://api.github.com/users/mavasani/repos","events_url":"https://api.github.com/users/mavasani/events{/privacy}","received_events_url":"https://api.github.com/users/mavasani/received_events","type":"User","site_admin":false},"created_at":"2015-12-16T23:17:33Z","updated_at":"2015-12-16T23:17:33Z","body":"@amcasey @drognanar The change by itself should work fine as top level code is essentially executable code within implicitly declared symbol. However, you probably need lot more testing to verify that the current [implementation](http://source.roslyn.io/#Microsoft.CodeAnalysis.VisualBasic/Binding/MethodBodySemanticModel.vb,35)which computes the speculative model, and subsequent calls into the returned speculative model will work for all top level cases."}}