We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
$ gotip version go version devel +8db4d02e8f Fri Apr 28 07:27:25 2017 +0000 linux/amd64
The following program:
package p func Foo() { _ = (make([]func() interface { M(interface{}) }, 1)) }
when built on loop on my 4-core machine with -c=4:
-c=4
while true; do gotip build -gcflags -c=4 main.go; done
crashes the compiler with a 10MB error message. The error starts with this:
# command-line-arguments <autogenerated>:1:0: internal compiler error: <autogenerated>:1:0: internal compiler error: <autogenerated>:1:0: internal compiler error: <autogenerated>:1:0: internal compiler error: <autogenerated>:1:0: internal compiler error
and ends with this:
internal compiler error: runtime: goroutine stack exceeds 1000000000-byte limit fatal error: stack overflow
Then a stacktrace follows:
fatal error: stack overflow runtime stack: runtime.throw(0xb9a69e, 0xe) /home/alberto/go/src/runtime/panic.go:596 +0x95 runtime.newstack(0x0) /home/alberto/go/src/runtime/stack.go:1059 +0x3da runtime.morestack() /home/alberto/go/src/runtime/asm_amd64.s:405 +0x86 goroutine 9 [running]: bufio.(*Writer).Flush(0xc420018380, 0x0, 0x0) /home/alberto/go/src/bufio/bufio.go:559 +0x1f3 fp=0xc440520370 sp=0xc440520368 cmd/compile/internal/gc.flusherrors() /home/alberto/go/src/cmd/compile/internal/gc/subr.go:71 +0x35 fp=0xc4405203f0 sp=0xc440520370 cmd/compile/internal/gc.Fatalf(0xba0a49, 0x18, 0xc440520548, 0x1, 0x1) /home/alberto/go/src/cmd/compile/internal/gc/subr.go:167 +0x26 fp=0xc440520460 sp=0xc4405203f0 cmd/compile/internal/gc.dowidth(0xc420051d40) /home/alberto/go/src/cmd/compile/internal/gc/align.go:186 +0xfb0 fp=0xc440520598 sp=0xc440520460 cmd/compile/internal/types.(*Type).Fields(0xc420051d40, 0x0) /home/alberto/go/src/cmd/compile/internal/types/type.go:792 +0x84 fp=0xc4405205d8 sp=0xc440520598 cmd/compile/internal/types.(*Fields).Len(...) /home/alberto/go/src/cmd/compile/internal/types/type.go:1215 cmd/compile/internal/types.(*Type).NumFields(0xc420051d40, 0x0) /home/alberto/go/src/cmd/compile/internal/types/type.go:1215 +0x2b fp=0xc4405205f8 sp=0xc4405205d8 cmd/compile/internal/types.(*Type).IsEmptyInterface(0xc420051d40, 0x0) /home/alberto/go/src/cmd/compile/internal/types/type.go:1202 +0x44 fp=0xc440520618 sp=0xc4405205f8 cmd/compile/internal/gc.typefmt(0xc420051d40, 0x0, 0x0, 0x1, 0x0, 0x0) /home/alberto/go/src/cmd/compile/internal/gc/fmt.go:775 +0x1e79 fp=0xc4405208e8 sp=0xc440520618 cmd/compile/internal/gc.tconv(0xc420051d40, 0x0, 0x0, 0x0, 0x0, 0x0) /home/alberto/go/src/cmd/compile/internal/gc/fmt.go:1809 +0x7a fp=0xc440520928 sp=0xc4405208e8 cmd/compile/internal/gc.typeFormat(0xc420051d40, 0xef87e0, 0xc425525a40, 0xc400000076, 0x0) /home/alberto/go/src/cmd/compile/internal/gc/fmt.go:1787 +0x92 fp=0xc4405209d0 sp=0xc440520928 cmd/compile/internal/gc.Main.func4(0xc420051d40, 0xef87e0, 0xc425525a40, 0xc400000076, 0x0) /home/alberto/go/src/cmd/compile/internal/gc/main.go:393 +0x51 fp=0xc440520a08 sp=0xc4405209d0 cmd/compile/internal/types.(*Type).Format(0xc420051d40, 0xef87e0, 0xc425525a40, 0x76) /home/alberto/go/src/cmd/compile/internal/types/utils.go:67 +0x5a fp=0xc440520a40 sp=0xc440520a08 fmt.(*pp).handleMethods(0xc425525a40, 0xc400000076, 0x1) /home/alberto/go/src/fmt/print.go:563 +0x49d fp=0xc440520ad0 sp=0xc440520a40 fmt.(*pp).printArg(0xc425525a40, 0xb8b9a0, 0xc420051d40, 0x76) /home/alberto/go/src/fmt/print.go:679 +0x185 fp=0xc440520b50 sp=0xc440520ad0 fmt.(*pp).doPrintf(0xc425525a40, 0xba0a49, 0x18, 0xc440520ea0, 0x1, 0x1) /home/alberto/go/src/fmt/print.go:996 +0x169 fp=0xc440520c80 sp=0xc440520b50 fmt.Fprintf(0xef39a0, 0xc42000c018, 0xba0a49, 0x18, 0xc440520ea0, 0x1, 0x1, 0x2e, 0x0, 0x0) /home/alberto/go/src/fmt/print.go:181 +0x76 fp=0xc440520ce8 sp=0xc440520c80 fmt.Printf(0xba0a49, 0x18, 0xc440520ea0, 0x1, 0x1, 0x2e, 0x0, 0x0) /home/alberto/go/src/fmt/print.go:190 +0x72 fp=0xc440520d48 sp=0xc440520ce8 cmd/compile/internal/gc.Fatalf(0xba0a49, 0x18, 0xc440520ea0, 0x1, 0x1) /home/alberto/go/src/cmd/compile/internal/gc/subr.go:170 +0x106 fp=0xc440520db8 sp=0xc440520d48 cmd/compile/internal/gc.dowidth(0xc420051d40) /home/alberto/go/src/cmd/compile/internal/gc/align.go:186 +0xfb0 fp=0xc440520ef0 sp=0xc440520db8 cmd/compile/internal/types.(*Type).Fields(0xc420051d40, 0x0) /home/alberto/go/src/cmd/compile/internal/types/type.go:792 +0x84 fp=0xc440520f30 sp=0xc440520ef0 cmd/compile/internal/types.(*Fields).Len(...) /home/alberto/go/src/cmd/compile/internal/types/type.go:1215 cmd/compile/internal/types.(*Type).NumFields(0xc420051d40, 0x0) /home/alberto/go/src/cmd/compile/internal/types/type.go:1215 +0x2b fp=0xc440520f50 sp=0xc440520f30 cmd/compile/internal/types.(*Type).IsEmptyInterface(0xc420051d40, 0x0) /home/alberto/go/src/cmd/compile/internal/types/type.go:1202 +0x44 fp=0xc440520f70 sp=0xc440520f50 cmd/compile/internal/gc.typefmt(0xc420051d40, 0x0, 0x0, 0x1, 0x0, 0x0) /home/alberto/go/src/cmd/compile/internal/gc/fmt.go:775 +0x1e79 fp=0xc440521240 sp=0xc440520f70 cmd/compile/internal/gc.tconv(0xc420051d40, 0x0, 0x0, 0x0, 0x0, 0x0) /home/alberto/go/src/cmd/compile/internal/gc/fmt.go:1809 +0x7a fp=0xc440521280 sp=0xc440521240 cmd/compile/internal/gc.typeFormat(0xc420051d40, 0xef87e0, 0xc425525980, 0xc400000076, 0x0) /home/alberto/go/src/cmd/compile/internal/gc/fmt.go:1787 +0x92 fp=0xc440521328 sp=0xc440521280 cmd/compile/internal/gc.Main.func4(0xc420051d40, 0xef87e0, 0xc425525980, 0xc400000076, 0x0) /home/alberto/go/src/cmd/compile/internal/gc/main.go:393 +0x51 fp=0xc440521360 sp=0xc440521328 cmd/compile/internal/types.(*Type).Format(0xc420051d40, 0xef87e0, 0xc425525980, 0x76) /home/alberto/go/src/cmd/compile/internal/types/utils.go:67 +0x5a fp=0xc440521398 sp=0xc440521360 fmt.(*pp).handleMethods(0xc425525980, 0xc400000076, 0x1) /home/alberto/go/src/fmt/print.go:563 +0x49d fp=0xc440521428 sp=0xc440521398 fmt.(*pp).printArg(0xc425525980, 0xb8b9a0, 0xc420051d40, 0x76) /home/alberto/go/src/fmt/print.go:679 +0x185 fp=0xc4405214a8 sp=0xc440521428 fmt.(*pp).doPrintf(0xc425525980, 0xba0a49, 0x18, 0xc4405217f8, 0x1, 0x1) /home/alberto/go/src/fmt/print.go:996 +0x169 fp=0xc4405215d8 sp=0xc4405214a8 fmt.Fprintf(0xef39a0, 0xc42000c018, 0xba0a49, 0x18, 0xc4405217f8, 0x1, 0x1, 0x2e, 0x0, 0x0) /home/alberto/go/src/fmt/print.go:181 +0x76 fp=0xc440521640 sp=0xc4405215d8 fmt.Printf(0xba0a49, 0x18, 0xc4405217f8, 0x1, 0x1, 0x2e, 0x0, 0x0) /home/alberto/go/src/fmt/print.go:190 +0x72 fp=0xc4405216a0 sp=0xc440521640 cmd/compile/internal/gc.Fatalf(0xba0a49, 0x18, 0xc4405217f8, 0x1, 0x1) /home/alberto/go/src/cmd/compile/internal/gc/subr.go:170 +0x106 fp=0xc440521710 sp=0xc4405216a0 cmd/compile/internal/gc.dowidth(0xc420051d40) /home/alberto/go/src/cmd/compile/internal/gc/align.go:186 +0xfb0 fp=0xc440521848 sp=0xc440521710 cmd/compile/internal/types.(*Type).Fields(0xc420051d40, 0x0) /home/alberto/go/src/cmd/compile/internal/types/type.go:792 +0x84 fp=0xc440521888 sp=0xc440521848 cmd/compile/internal/types.(*Fields).Len(...) /home/alberto/go/src/cmd/compile/internal/types/type.go:1215 cmd/compile/internal/types.(*Type).NumFields(0xc420051d40, 0x0) /home/alberto/go/src/cmd/compile/internal/types/type.go:1215 +0x2b fp=0xc4405218a8 sp=0xc440521888 cmd/compile/internal/types.(*Type).IsEmptyInterface(0xc420051d40, 0x0) /home/alberto/go/src/cmd/compile/internal/types/type.go:1202 +0x44 fp=0xc4405218c8 sp=0xc4405218a8 cmd/compile/internal/gc.typefmt(0xc420051d40, 0x0, 0x0, 0x1, 0x0, 0x0) /home/alberto/go/src/cmd/compile/internal/gc/fmt.go:775 +0x1e79 fp=0xc440521b98 sp=0xc4405218c8 cmd/compile/internal/gc.tconv(0xc420051d40, 0x0, 0x0, 0x0, 0x0, 0x0) /home/alberto/go/src/cmd/compile/internal/gc/fmt.go:1809 +0x7a fp=0xc440521bd8 sp=0xc440521b98 cmd/compile/internal/gc.typeFormat(0xc420051d40, 0xef87e0, 0xc4255258c0, 0xc400000076, 0x0) /home/alberto/go/src/cmd/compile/internal/gc/fmt.go:1787 +0x92 fp=0xc440521c80 sp=0xc440521bd8 cmd/compile/internal/gc.Main.func4(0xc420051d40, 0xef87e0, 0xc4255258c0, 0xc400000076, 0x0) /home/alberto/go/src/cmd/compile/internal/gc/main.go:393 +0x51 fp=0xc440521cb8 sp=0xc440521c80 cmd/compile/internal/types.(*Type).Format(0xc420051d40, 0xef87e0, 0xc4255258c0, 0x76) /home/alberto/go/src/cmd/compile/internal/types/utils.go:67 +0x5a fp=0xc440521cf0 sp=0xc440521cb8 fmt.(*pp).handleMethods(0xc4255258c0, 0xc400000076, 0x1) /home/alberto/go/src/fmt/print.go:563 +0x49d fp=0xc440521d80 sp=0xc440521cf0 fmt.(*pp).printArg(0xc4255258c0, 0xb8b9a0, 0xc420051d40, 0x76) /home/alberto/go/src/fmt/print.go:679 +0x185 fp=0xc440521e00 sp=0xc440521d80 fmt.(*pp).doPrintf(0xc4255258c0, 0xba0a49, 0x18, 0xc440522150, 0x1, 0x1) /home/alberto/go/src/fmt/print.go:996 +0x169 fp=0xc440521f30 sp=0xc440521e00 fmt.Fprintf(0xef39a0, 0xc42000c018, 0xba0a49, 0x18, 0xc440522150, 0x1, 0x1, 0x2e, 0x0, 0x0) /home/alberto/go/src/fmt/print.go:181 +0x76 fp=0xc440521f98 sp=0xc440521f30 fmt.Printf(0xba0a49, 0x18, 0xc440522150, 0x1, 0x1, 0x2e, 0x0, 0x0) /home/alberto/go/src/fmt/print.go:190 +0x72 fp=0xc440521ff8 sp=0xc440521f98 cmd/compile/internal/gc.Fatalf(0xba0a49, 0x18, 0xc440522150, 0x1, 0x1) /home/alberto/go/src/cmd/compile/internal/gc/subr.go:170 +0x106 fp=0xc440522068 sp=0xc440521ff8 cmd/compile/internal/gc.dowidth(0xc420051d40) /home/alberto/go/src/cmd/compile/internal/gc/align.go:186 +0xfb0 fp=0xc4405221a0 sp=0xc440522068 cmd/compile/internal/types.(*Type).Fields(0xc420051d40, 0x0) /home/alberto/go/src/cmd/compile/internal/types/type.go:792 +0x84 fp=0xc4405221e0 sp=0xc4405221a0 cmd/compile/internal/types.(*Fields).Len(...) /home/alberto/go/src/cmd/compile/internal/types/type.go:1215 cmd/compile/internal/types.(*Type).NumFields(0xc420051d40, 0x0) /home/alberto/go/src/cmd/compile/internal/types/type.go:1215 +0x2b fp=0xc440522200 sp=0xc4405221e0 cmd/compile/internal/types.(*Type).IsEmptyInterface(0xc420051d40, 0x0) /home/alberto/go/src/cmd/compile/internal/types/type.go:1202 +0x44 fp=0xc440522220 sp=0xc440522200 cmd/compile/internal/gc.typefmt(0xc420051d40, 0x0, 0x0, 0x1, 0x0, 0x0) /home/alberto/go/src/cmd/compile/internal/gc/fmt.go:775 +0x1e79 fp=0xc4405224f0 sp=0xc440522220 cmd/compile/internal/gc.tconv(0xc420051d40, 0x0, 0x0, 0x0, 0x0, 0x0) /home/alberto/go/src/cmd/compile/internal/gc/fmt.go:1809 +0x7a fp=0xc440522530 sp=0xc4405224f0 cmd/compile/internal/gc.typeFormat(0xc420051d40, 0xef87e0, 0xc425525800, 0xc400000076, 0x0) /home/alberto/go/src/cmd/compile/internal/gc/fmt.go:1787 +0x92 fp=0xc4405225d8 sp=0xc440522530 cmd/compile/internal/gc.Main.func4(0xc420051d40, 0xef87e0, 0xc425525800, 0xc400000076, 0x0) /home/alberto/go/src/cmd/compile/internal/gc/main.go:393 +0x51 fp=0xc440522610 sp=0xc4405225d8 cmd/compile/internal/types.(*Type).Format(0xc420051d40, 0xef87e0, 0xc425525800, 0x76) /home/alberto/go/src/cmd/compile/internal/types/utils.go:67 +0x5a fp=0xc440522648 sp=0xc440522610 fmt.(*pp).handleMethods(0xc425525800, 0xc400000076, 0x1) /home/alberto/go/src/fmt/print.go:563 +0x49d fp=0xc4405226d8 sp=0xc440522648 fmt.(*pp).printArg(0xc425525800, 0xb8b9a0, 0xc420051d40, 0x76) /home/alberto/go/src/fmt/print.go:679 +0x185 fp=0xc440522758 sp=0xc4405226d8 fmt.(*pp).doPrintf(0xc425525800, 0xba0a49, 0x18, 0xc440522aa8, 0x1, 0x1) /home/alberto/go/src/fmt/print.go:996 +0x169 fp=0xc440522888 sp=0xc440522758 fmt.Fprintf(0xef39a0, 0xc42000c018, 0xba0a49, 0x18, 0xc440522aa8, 0x1, 0x1, 0x2e, 0x0, 0x0) /home/alberto/go/src/fmt/print.go:181 +0x76 fp=0xc4405228f0 sp=0xc440522888 fmt.Printf(0xba0a49, 0x18, 0xc440522aa8, 0x1, 0x1, 0x2e, 0x0, 0x0) /home/alberto/go/src/fmt/print.go:190 +0x72 fp=0xc440522950 sp=0xc4405228f0 cmd/compile/internal/gc.Fatalf(0xba0a49, 0x18, 0xc440522aa8, 0x1, 0x1) /home/alberto/go/src/cmd/compile/internal/gc/subr.go:170 +0x106 fp=0xc4405229c0 sp=0xc440522950 cmd/compile/internal/gc.dowidth(0xc420051d40) /home/alberto/go/src/cmd/compile/internal/gc/align.go:186 +0xfb0 fp=0xc440522af8 sp=0xc4405229c0 cmd/compile/internal/types.(*Type).Fields(0xc420051d40, 0x0) /home/alberto/go/src/cmd/compile/internal/types/type.go:792 +0x84 fp=0xc440522b38 sp=0xc440522af8 cmd/compile/internal/types.(*Fields).Len(...) /home/alberto/go/src/cmd/compile/internal/types/type.go:1215 cmd/compile/internal/types.(*Type).NumFields(0xc420051d40, 0x0) /home/alberto/go/src/cmd/compile/internal/types/type.go:1215 +0x2b fp=0xc440522b58 sp=0xc440522b38 cmd/compile/internal/types.(*Type).IsEmptyInterface(0xc420051d40, 0x0) /home/alberto/go/src/cmd/compile/internal/types/type.go:1202 +0x44 fp=0xc440522b78 sp=0xc440522b58 cmd/compile/internal/gc.typefmt(0xc420051d40, 0x0, 0x0, 0x1, 0x0, 0x0) /home/alberto/go/src/cmd/compile/internal/gc/fmt.go:775 +0x1e79 fp=0xc440522e48 sp=0xc440522b78 cmd/compile/internal/gc.tconv(0xc420051d40, 0x0, 0x0, 0x0, 0x0, 0x0) /home/alberto/go/src/cmd/compile/internal/gc/fmt.go:1809 +0x7a fp=0xc440522e88 sp=0xc440522e48 cmd/compile/internal/gc.typeFormat(0xc420051d40, 0xef87e0, 0xc425525740, 0xc400000076, 0x0) /home/alberto/go/src/cmd/compile/internal/gc/fmt.go:1787 +0x92 fp=0xc440522f30 sp=0xc440522e88 cmd/compile/internal/gc.Main.func4(0xc420051d40, 0xef87e0, 0xc425525740, 0xc400000076, 0x0) /home/alberto/go/src/cmd/compile/internal/gc/main.go:393 +0x51 fp=0xc440522f68 sp=0xc440522f30 cmd/compile/internal/types.(*Type).Format(0xc420051d40, 0xef87e0, 0xc425525740, 0x76) /home/alberto/go/src/cmd/compile/internal/types/utils.go:67 +0x5a fp=0xc440522fa0 sp=0xc440522f68 fmt.(*pp).handleMethods(0xc425525740, 0xc400000076, 0x1) /home/alberto/go/src/fmt/print.go:563 +0x49d fp=0xc440523030 sp=0xc440522fa0 fmt.(*pp).printArg(0xc425525740, 0xb8b9a0, 0xc420051d40, 0x76) /home/alberto/go/src/fmt/print.go:679 +0x185 fp=0xc4405230b0 sp=0xc440523030 fmt.(*pp).doPrintf(0xc425525740, 0xba0a49, 0x18, 0xc440523400, 0x1, 0x1) /home/alberto/go/src/fmt/print.go:996 +0x169 fp=0xc4405231e0 sp=0xc4405230b0 fmt.Fprintf(0xef39a0, 0xc42000c018, 0xba0a49, 0x18, 0xc440523400, 0x1, 0x1, 0x2e, 0x0, 0x0) /home/alberto/go/src/fmt/print.go:181 +0x76 fp=0xc440523248 sp=0xc4405231e0 fmt.Printf(0xba0a49, 0x18, 0xc440523400, 0x1, 0x1, 0x2e, 0x0, 0x0) /home/alberto/go/src/fmt/print.go:190 +0x72 fp=0xc4405232a8 sp=0xc440523248 cmd/compile/internal/gc.Fatalf(0xba0a49, 0x18, 0xc440523400, 0x1, 0x1) /home/alberto/go/src/cmd/compile/internal/gc/subr.go:170 +0x106 fp=0xc440523318 sp=0xc4405232a8 cmd/compile/internal/gc.dowidth(0xc420051d40) /home/alberto/go/src/cmd/compile/internal/gc/align.go:186 +0xfb0 fp=0xc440523450 sp=0xc440523318 cmd/compile/internal/types.(*Type).Fields(0xc420051d40, 0x0) /home/alberto/go/src/cmd/compile/internal/types/type.go:792 +0x84 fp=0xc440523490 sp=0xc440523450 cmd/compile/internal/types.(*Fields).Len(...) /home/alberto/go/src/cmd/compile/internal/types/type.go:1215 cmd/compile/internal/types.(*Type).NumFields(0xc420051d40, 0x0) /home/alberto/go/src/cmd/compile/internal/types/type.go:1215 +0x2b fp=0xc4405234b0 sp=0xc440523490 cmd/compile/internal/types.(*Type).IsEmptyInterface(0xc420051d40, 0x0) /home/alberto/go/src/cmd/compile/internal/types/type.go:1202 +0x44 fp=0xc4405234d0 sp=0xc4405234b0 cmd/compile/internal/gc.typefmt(0xc420051d40, 0x0, 0x0, 0x1, 0x0, 0x0) /home/alberto/go/src/cmd/compile/internal/gc/fmt.go:775 +0x1e79 fp=0xc4405237a0 sp=0xc4405234d0 cmd/compile/internal/gc.tconv(0xc420051d40, 0x0, 0x0, 0x0, 0x0, 0x0) /home/alberto/go/src/cmd/compile/internal/gc/fmt.go:1809 +0x7a fp=0xc4405237e0 sp=0xc4405237a0 cmd/compile/internal/gc.typeFormat(0xc420051d40, 0xef87e0, 0xc425525680, 0xc400000076, 0x0) /home/alberto/go/src/cmd/compile/internal/gc/fmt.go:1787 +0x92 fp=0xc440523888 sp=0xc4405237e0 cmd/compile/internal/gc.Main.func4(0xc420051d40, 0xef87e0, 0xc425525680, 0xc400000076, 0x0) /home/alberto/go/src/cmd/compile/internal/gc/main.go:393 +0x51 fp=0xc4405238c0 sp=0xc440523888 cmd/compile/internal/types.(*Type).Format(0xc420051d40, 0xef87e0, 0xc425525680, 0x76) /home/alberto/go/src/cmd/compile/internal/types/utils.go:67 +0x5a fp=0xc4405238f8 sp=0xc4405238c0 fmt.(*pp).handleMethods(0xc425525680, 0xc400000076, 0x1) /home/alberto/go/src/fmt/print.go:563 +0x49d fp=0xc440523988 sp=0xc4405238f8 fmt.(*pp).printArg(0xc425525680, 0xb8b9a0, 0xc420051d40, 0x76) /home/alberto/go/src/fmt/print.go:679 +0x185 fp=0xc440523a08 sp=0xc440523988 fmt.(*pp).doPrintf(0xc425525680, 0xba0a49, 0x18, 0xc440523d58, 0x1, 0x1) /home/alberto/go/src/fmt/print.go:996 +0x169 fp=0xc440523b38 sp=0xc440523a08 fmt.Fprintf(0xef39a0, 0xc42000c018, 0xba0a49, 0x18, 0xc440523d58, 0x1, 0x1, 0x2e, 0x0, 0x0) /home/alberto/go/src/fmt/print.go:181 +0x76 fp=0xc440523ba0 sp=0xc440523b38 fmt.Printf(0xba0a49, 0x18, 0xc440523d58, 0x1, 0x1, 0x2e, 0x0, 0x0) /home/alberto/go/src/fmt/print.go:190 +0x72 fp=0xc440523c00 sp=0xc440523ba0 cmd/compile/internal/gc.Fatalf(0xba0a49, 0x18, 0xc440523d58, 0x1, 0x1) /home/alberto/go/src/cmd/compile/internal/gc/subr.go:170 +0x106 fp=0xc440523c70 sp=0xc440523c00 cmd/compile/internal/gc.dowidth(0xc420051d40) /home/alberto/go/src/cmd/compile/internal/gc/align.go:186 +0xfb0 fp=0xc440523da8 sp=0xc440523c70 cmd/compile/internal/types.(*Type).Fields(0xc420051d40, 0x0) /home/alberto/go/src/cmd/compile/internal/types/type.go:792 +0x84 fp=0xc440523de8 sp=0xc440523da8 cmd/compile/internal/types.(*Fields).Len(...) /home/alberto/go/src/cmd/compile/internal/types/type.go:1215 cmd/compile/internal/types.(*Type).NumFields(0xc420051d40, 0x0) /home/alberto/go/src/cmd/compile/internal/types/type.go:1215 +0x2b fp=0xc440523e08 sp=0xc440523de8 cmd/compile/internal/types.(*Type).IsEmptyInterface(0xc420051d40, 0x0) /home/alberto/go/src/cmd/compile/internal/types/type.go:1202 +0x44 fp=0xc440523e28 sp=0xc440523e08 cmd/compile/internal/gc.typefmt(0xc420051d40, 0x0, 0x0, 0x1, 0x0, 0x0) /home/alberto/go/src/cmd/compile/internal/gc/fmt.go:775 +0x1e79 fp=0xc4405240f8 sp=0xc440523e28 cmd/compile/internal/gc.tconv(0xc420051d40, 0x0, 0x0, 0x0, 0x0, 0x0) /home/alberto/go/src/cmd/compile/internal/gc/fmt.go:1809 +0x7a fp=0xc440524138 sp=0xc4405240f8 cmd/compile/internal/gc.typeFormat(0xc420051d40, 0xef87e0, 0xc4255255c0, 0xc400000076, 0x0) /home/alberto/go/src/cmd/compile/internal/gc/fmt.go:1787 +0x92 fp=0xc4405241e0 sp=0xc440524138 ...additional frames elided... created by cmd/compile/internal/gc.compileFunctions /home/alberto/go/src/cmd/compile/internal/gc/pgen.go:278 +0x10b goroutine 1 [semacquire]: sync.runtime_Semacquire(0xc420014d7c) /home/alberto/go/src/runtime/sema.go:56 +0x39 sync.(*WaitGroup).Wait(0xc420014d70) /home/alberto/go/src/sync/waitgroup.go:131 +0x74 cmd/compile/internal/gc.compileFunctions() /home/alberto/go/src/cmd/compile/internal/gc/pgen.go:290 +0x1d3 cmd/compile/internal/gc.Main(0xbb0c68) /home/alberto/go/src/cmd/compile/internal/gc/main.go:580 +0x2854 main.main() /home/alberto/go/src/cmd/compile/main.go:49 +0x95
The text was updated successfully, but these errors were encountered:
cc @josharian
Sorry, something went wrong.
internal compiler error while reporting an internal compiler error is the best kind of error.
Nice one. Testing fixes, will be on their way soon.
CL https://golang.org/cl/42131 mentions this issue.
CL https://golang.org/cl/42130 mentions this issue.
cmd/compile: prevent infinite recursion printing types in Fatalf
85d6a29
Updates #20162 Change-Id: Ie289bae0d0be8430e492ac73fd6e6bf36991d4a1 Reviewed-on: https://go-review.googlesource.com/42130 Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
92363d5
No branches or pull requests
The following program:
when built on loop on my 4-core machine with
-c=4
:crashes the compiler with a 10MB error message. The error starts with this:
and ends with this:
Then a stacktrace follows:
The text was updated successfully, but these errors were encountered: