{"action":"opened","issue":{"url":"https://api.github.com/repos/golang/go/issues/10441","labels_url":"https://api.github.com/repos/golang/go/issues/10441/labels{/name}","comments_url":"https://api.github.com/repos/golang/go/issues/10441/comments","events_url":"https://api.github.com/repos/golang/go/issues/10441/events","html_url":"https://github.com/golang/go/issues/10441","id":68197644,"number":10441,"title":"cmd/gc: compiler crash","user":{"login":"bradfitz","id":2621,"avatar_url":"https://avatars.githubusercontent.com/u/2621?v=3","gravatar_id":"","url":"https://api.github.com/users/bradfitz","html_url":"https://github.com/bradfitz","followers_url":"https://api.github.com/users/bradfitz/followers","following_url":"https://api.github.com/users/bradfitz/following{/other_user}","gists_url":"https://api.github.com/users/bradfitz/gists{/gist_id}","starred_url":"https://api.github.com/users/bradfitz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bradfitz/subscriptions","organizations_url":"https://api.github.com/users/bradfitz/orgs","repos_url":"https://api.github.com/users/bradfitz/repos","events_url":"https://api.github.com/users/bradfitz/events{/privacy}","received_events_url":"https://api.github.com/users/bradfitz/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":{"login":"dvyukov","id":1095328,"avatar_url":"https://avatars.githubusercontent.com/u/1095328?v=3","gravatar_id":"","url":"https://api.github.com/users/dvyukov","html_url":"https://github.com/dvyukov","followers_url":"https://api.github.com/users/dvyukov/followers","following_url":"https://api.github.com/users/dvyukov/following{/other_user}","gists_url":"https://api.github.com/users/dvyukov/gists{/gist_id}","starred_url":"https://api.github.com/users/dvyukov/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dvyukov/subscriptions","organizations_url":"https://api.github.com/users/dvyukov/orgs","repos_url":"https://api.github.com/users/dvyukov/repos","events_url":"https://api.github.com/users/dvyukov/events{/privacy}","received_events_url":"https://api.github.com/users/dvyukov/received_events","type":"User","site_admin":false},"milestone":{"url":"https://api.github.com/repos/golang/go/milestones/1","html_url":"https://github.com/golang/go/milestones/Go1.5","labels_url":"https://api.github.com/repos/golang/go/milestones/1/labels","id":905105,"number":1,"title":"Go1.5","description":"","creator":{"login":"bradfitz","id":2621,"avatar_url":"https://avatars.githubusercontent.com/u/2621?v=3","gravatar_id":"","url":"https://api.github.com/users/bradfitz","html_url":"https://github.com/bradfitz","followers_url":"https://api.github.com/users/bradfitz/followers","following_url":"https://api.github.com/users/bradfitz/following{/other_user}","gists_url":"https://api.github.com/users/bradfitz/gists{/gist_id}","starred_url":"https://api.github.com/users/bradfitz/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bradfitz/subscriptions","organizations_url":"https://api.github.com/users/bradfitz/orgs","repos_url":"https://api.github.com/users/bradfitz/repos","events_url":"https://api.github.com/users/bradfitz/events{/privacy}","received_events_url":"https://api.github.com/users/bradfitz/received_events","type":"User","site_admin":false},"open_issues":346,"closed_issues":287,"state":"open","created_at":"2014-12-16T02:26:41Z","updated_at":"2015-04-13T21:22:47Z","due_on":"2015-07-31T04:00:00Z","closed_at":null},"comments":0,"created_at":"2015-04-13T21:22:47Z","updated_at":"2015-04-13T21:22:47Z","closed_at":null,"body":"This commit causes compiling Camlistore to crash in the compiler:\r\n\r\n@dvyukov: cmd/gc: fix escape analysis of closures\r\nhttps://go-review.googlesource.com/#/c/8408/\r\n\r\nIt seems that the new Node lacks a Type perhaps.\r\n\r\nRepro:\r\n\r\n```\r\n$ go get -d camlistore.org/pkg/server\r\n$ go install camlistore.org/pkg/server\r\n$ go install -v camlistore.org/pkg/server\r\ncamlistore.org/pkg/search\r\ncamlistore.org/pkg/server\r\n# camlistore.org/pkg/server\r\npanic: runtime error: invalid memory address or nil pointer dereference\r\n[signal 0xb code=0x1 addr=0xf pc=0x10fdcf]\r\n\r\ngoroutine 1 [running]:\r\ncmd/internal/gc.haspointers(0x0, 0xffffffffffffffff)\r\n\t/Users/bradfitz/go/src/cmd/internal/gc/reflect.go:623 +0x1f\r\ncmd/internal/gc.escwalk(0x20c82dc00, 0xffffffffffffffff, 0x20c82dda0, 0x20c835520)\r\n\t/Users/bradfitz/go/src/cmd/internal/gc/esc.go:1291 +0x14aa\r\ncmd/internal/gc.escwalk(0x20c82dc00, 0xffffffffffffffff, 0x20c82dda0, 0x20beac340)\r\n\t/Users/bradfitz/go/src/cmd/internal/gc/esc.go:1386 +0x836\r\ncmd/internal/gc.escwalk(0x20c82dc00, 0x0, 0x20c82dda0, 0x20c5f4000)\r\n\t/Users/bradfitz/go/src/cmd/internal/gc/esc.go:1328 +0x11b2\r\ncmd/internal/gc.escwalk(0x20c82dc00, 0x0, 0x20c82dda0, 0x20beaf1e0)\r\n\t/Users/bradfitz/go/src/cmd/internal/gc/esc.go:1386 +0x836\r\ncmd/internal/gc.escflood(0x20c82dc00, 0x20c82dda0)\r\n\t/Users/bradfitz/go/src/cmd/internal/gc/esc.go:1224 +0x324\r\ncmd/internal/gc.escAnalyze(0x20c830b20, 0x20c829c00)\r\n\t/Users/bradfitz/go/src/cmd/internal/gc/esc.go:302 +0x312\r\ncmd/internal/gc.(*bottomUpVisitor).visit(0x20c7b54a0, 0x20bea2000, 0xb2)\r\n\t/Users/bradfitz/go/src/cmd/internal/gc/esc.go:115 +0x1e6\r\ncmd/internal/gc.(*bottomUpVisitor).visitcode(0x20c7b54a0, 0x20be9f380, 0xb2, 0x2000000b2)\r\n\t/Users/bradfitz/go/src/cmd/internal/gc/esc.go:149 +0x245\r\ncmd/internal/gc.(*bottomUpVisitor).visitcodelist(0x20c7b54a0, 0x20be797e0, 0x2000000b2, 0x90c4d)\r\n\t/Users/bradfitz/go/src/cmd/internal/gc/esc.go:123 +0x4d\r\ncmd/internal/gc.(*bottomUpVisitor).visit(0x20c7b54a0, 0x20c5eb520, 0xb0)\r\n\t/Users/bradfitz/go/src/cmd/internal/gc/esc.go:91 +0x10e\r\ncmd/internal/gc.(*bottomUpVisitor).visitcode(0x20c7b54a0, 0x20be9dba0, 0x2000000b0, 0xb0)\r\n\t/Users/bradfitz/go/src/cmd/internal/gc/esc.go:157 +0x1cf\r\ncmd/internal/gc.(*bottomUpVisitor).visitcode(0x20c7b54a0, 0x20be9f520, 0xb0, 0xb0)\r\n\t/Users/bradfitz/go/src/cmd/internal/gc/esc.go:134 +0x75\r\ncmd/internal/gc.(*bottomUpVisitor).visitcode(0x20c7b54a0, 0x20be9f6c0, 0xb0, 0xb0)\r\n\t/Users/bradfitz/go/src/cmd/internal/gc/esc.go:134 +0x75\r\ncmd/internal/gc.(*bottomUpVisitor).visitcodelist(0x20c7b54a0, 0x20be79800, 0xb0, 0xb0)\r\n\t/Users/bradfitz/go/src/cmd/internal/gc/esc.go:123 +0x4d\r\ncmd/internal/gc.(*bottomUpVisitor).visitcode(0x20c7b54a0, 0x20be9cb60, 0xb0, 0x2000000b0)\r\n\t/Users/bradfitz/go/src/cmd/internal/gc/esc.go:139 +0x13d\r\ncmd/internal/gc.(*bottomUpVisitor).visitcodelist(0x20c7b54a0, 0x20be79820, 0xb0, 0x90c4d)\r\n\t/Users/bradfitz/go/src/cmd/internal/gc/esc.go:123 +0x4d\r\ncmd/internal/gc.(*bottomUpVisitor).visit(0x20c7b54a0, 0x20be961a0, 0xac)\r\n\t/Users/bradfitz/go/src/cmd/internal/gc/esc.go:91 +0x10e\r\ncmd/internal/gc.(*bottomUpVisitor).visitcode(0x20c7b54a0, 0x20be95380, 0xac, 0xac)\r\n\t/Users/bradfitz/go/src/cmd/internal/gc/esc.go:149 +0x245\r\ncmd/internal/gc.(*bottomUpVisitor).visitcode(0x20c7b54a0, 0x20be95520, 0x2000000ac, 0x2000000ac)\r\n\t/Users/bradfitz/go/src/cmd/internal/gc/esc.go:134 +0x75\r\ncmd/internal/gc.(*bottomUpVisitor).visitcodelist(0x20c7b54a0, 0x20be79140, 0xac, 0x90c4d)\r\n\t/Users/bradfitz/go/src/cmd/internal/gc/esc.go:123 +0x4d\r\ncmd/internal/gc.(*bottomUpVisitor).visit(0x20c7b54a0, 0x20be8e680, 0x200000086)\r\n\t/Users/bradfitz/go/src/cmd/internal/gc/esc.go:91 +0x10e\r\ncmd/internal/gc.(*bottomUpVisitor).visitcode(0x20c7b54a0, 0x20bdce4e0, 0x200000086, 0x200000086)\r\n\t/Users/bradfitz/go/src/cmd/internal/gc/esc.go:149 +0x245\r\ncmd/internal/gc.(*bottomUpVisitor).visitcode(0x20c7b54a0, 0x20bdce680, 0x200000086, 0x200000086)\r\n\t/Users/bradfitz/go/src/cmd/internal/gc/esc.go:134 +0x75\r\ncmd/internal/gc.(*bottomUpVisitor).visitcodelist(0x20c7b54a0, 0x20bdc2a20, 0x86, 0x86)\r\n\t/Users/bradfitz/go/src/cmd/internal/gc/esc.go:123 +0x4d\r\ncmd/internal/gc.(*bottomUpVisitor).visitcode(0x20c7b54a0, 0x20bdce000, 0x86, 0x200000086)\r\n\t/Users/bradfitz/go/src/cmd/internal/gc/esc.go:139 +0x13d\r\ncmd/internal/gc.(*bottomUpVisitor).visitcodelist(0x20c7b54a0, 0x20bdc2a40, 0x86, 0x84)\r\n\t/Users/bradfitz/go/src/cmd/internal/gc/esc.go:123 +0x4d\r\ncmd/internal/gc.(*bottomUpVisitor).visit(0x20c7b54a0, 0x20bdaf1e0, 0x84)\r\n\t/Users/bradfitz/go/src/cmd/internal/gc/esc.go:91 +0x10e\r\ncmd/internal/gc.visitBottomUp(0x208713320, 0x3c7058)\r\n\t/Users/bradfitz/go/src/cmd/internal/gc/esc.go:67 +0xaf\r\ncmd/internal/gc.escapes(0x208713320)\r\n\t/Users/bradfitz/go/src/cmd/internal/gc/esc.go:198 +0x34\r\ncmd/internal/gc.Main()\r\n\t/Users/bradfitz/go/src/cmd/internal/gc/lex.go:427 +0x1cc2\r\nmain.main()\r\n\t/Users/bradfitz/go/src/cmd/6g/galign.go:123 +0x71f\r\n```\r\n\r\nIn case Camlistore accidentally changes and ends up avoiding this crash, I verify it's still crashing at camlistore/camlistore@f88da2ae70d9"}}