PR 64725 says that in some cases a finalizer test fails for gccgo.  I
have not seen this myself but it's certainly possible, since gccgo's
garbage collection is not precise.  This patch disables the finalizer
tests that require that a finalizer always run.  Bootstrapped and ran
Go testsuite on x86_64-unknown-linux-gnu.  Committed to mainline.

Ian
diff -r 25802b3fa1b1 libgo/go/runtime/mfinal_test.go
--- a/libgo/go/runtime/mfinal_test.go   Fri Jan 23 11:49:03 2015 -0800
+++ b/libgo/go/runtime/mfinal_test.go   Fri Jan 23 15:19:44 2015 -0800
@@ -24,6 +24,9 @@
        if runtime.GOARCH != "amd64" {
                t.Skipf("Skipping on non-amd64 machine")
        }
+       if runtime.Compiler == "gccgo" {
+               t.Skip("skipping for gccgo")
+       }
 
        ch := make(chan bool, 10)
        finalize := func(x *int) {
@@ -80,6 +83,9 @@
        if runtime.GOARCH != "amd64" {
                t.Skipf("Skipping on non-amd64 machine")
        }
+       if runtime.Compiler == "gccgo" {
+               t.Skip("skipping for gccgo")
+       }
        ch := make(chan bool)
        done := make(chan bool, 1)
        go func() {
@@ -174,6 +180,9 @@
        if true { // disable until bug 7564 is fixed.
                return
        }
+       if runtime.Compiler == "gccgo" {
+               t.Skip("skipping for gccgo")
+       }
        x, y := adjChunks()
 
        // the pointer inside xs points to y.

Reply via email to