]> Cypherpunks.ru repositories - gostls13.git/blobdiff - test/used.go
cmd/compile/internal/inline: score call sites exposed by inlines
[gostls13.git] / test / used.go
index 5c7aad24a6ca241bd4dfdc89a8fa1ba3f5db69b1..5bdc5a731886913c393b42177ffc17964fbc4579 100644 (file)
@@ -42,102 +42,104 @@ var m map[int]int
 
 func _() {
        // Note: if the next line changes to x, the error silences the x+x etc below!
-       x1 // ERROR "x1 evaluated but not used"
+       x1 // ERROR "x1 .* not used"
 
-       nil                    // ERROR "nil evaluated but not used"
-       C                      // ERROR  "C evaluated but not used"
-       1                      // ERROR "1 evaluated but not used"
-       x + x                  // ERROR "x \+ x evaluated but not used"
-       x - x                  // ERROR "x - x evaluated but not used"
-       x | x                  // ERROR "x \| x evaluated but not used"
-       "a" + s                // ERROR ".a. \+ s evaluated but not used"
-       &x                     // ERROR "&x evaluated but not used"
-       b && b                 // ERROR "b && b evaluated but not used"
-       append(slice, 1)       // ERROR "append\(slice, 1\) evaluated but not used"
-       string(bytes)          // ERROR "string\(bytes\) evaluated but not used"
-       string(runes)          // ERROR "string\(runes\) evaluated but not used"
+       nil                    // ERROR "nil .* not used"
+       C                      // ERROR  "C .* not used"
+       1                      // ERROR "1 .* not used"
+       x + x                  // ERROR "x \+ x .* not used"
+       x - x                  // ERROR "x - x .* not used"
+       x | x                  // ERROR "x \| x .* not used"
+       "a" + s                // ERROR ".a. \+ s .* not used"
+       &x                     // ERROR "&x .* not used"
+       b && b                 // ERROR "b && b .* not used"
+       append(slice, 1)       // ERROR "append\(slice, 1\) .* not used"
+       string(bytes)          // ERROR "string\(bytes\) .* not used"
+       string(runes)          // ERROR "string\(runes\) .* not used"
        f0()                   // ok
        f1()                   // ok
        f2()                   // ok
-       _ = f0()               // ERROR "f0\(\) used as value"
+       _ = f0()               // ERROR "f0\(\) .*used as value"
        _ = f1()               // ok
        _, _ = f2()            // ok
-       _ = f2()               // ERROR "assignment mismatch: 1 variable but f2 returns 2 values"
-       T.M0                   // ERROR "T.M0 evaluated but not used"
-       t.M0                   // ERROR "t.M0 evaluated but not used"
-       cap                    // ERROR "use of builtin cap not in function call"
-       cap(slice)             // ERROR "cap\(slice\) evaluated but not used"
+       _ = f2()               // ERROR "assignment mismatch: 1 variable but f2 returns 2 values|cannot assign"
+       _ = f1(), 0            // ERROR "assignment mismatch: 1 variable but 2 values|cannot assign"
+       T.M0                   // ERROR "T.M0 .* not used"
+       t.M0                   // ERROR "t.M0 .* not used"
+       cap                    // ERROR "use of builtin cap not in function call|must be called"
+       cap(slice)             // ERROR "cap\(slice\) .* not used"
        close(c)               // ok
-       _ = close(c)           // ERROR "close\(c\) used as value"
-       func() {}              // ERROR "func literal evaluated but not used"
+       _ = close(c)           // ERROR "close\(c\) .*used as value"
+       func() {}              // ERROR "func literal .* not used|is not used"
        X{}                    // ERROR "undefined: X"
-       map[string]int{}       // ERROR "map\[string\]int{} evaluated but not used"
-       struct{}{}             // ERROR "struct ?{}{} evaluated but not used"
-       [1]int{}               // ERROR "\[1\]int{} evaluated but not used"
-       []int{}                // ERROR "\[\]int{} evaluated but not used"
-       &struct{}{}            // ERROR "&struct ?{}{} evaluated but not used"
-       float32(x)             // ERROR "float32\(x\) evaluated but not used"
-       I(t)                   // ERROR "I\(t\) evaluated but not used"
-       int(x)                 // ERROR "int\(x\) evaluated but not used"
+       map[string]int{}       // ERROR "map\[string\]int{} .* not used"
+       struct{}{}             // ERROR "struct ?{}{} .* not used"
+       [1]int{}               // ERROR "\[1\]int{} .* not used"
+       []int{}                // ERROR "\[\]int{} .* not used"
+       &struct{}{}            // ERROR "&struct ?{}{} .* not used"
+       float32(x)             // ERROR "float32\(x\) .* not used"
+       I(t)                   // ERROR "I\(t\) .* not used"
+       int(x)                 // ERROR "int\(x\) .* not used"
        copy(slice, slice)     // ok
        _ = copy(slice, slice) // ok
        delete(m, 1)           // ok
-       _ = delete(m, 1)       // ERROR "delete\(m, 1\) used as value"
-       t.X                    // ERROR "t.X evaluated but not used"
-       tp.X                   // ERROR "tp.X evaluated but not used"
-       t.M                    // ERROR "t.M evaluated but not used"
-       I.M                    // ERROR "I.M evaluated but not used"
-       i.(T)                  // ERROR "i.\(T\) evaluated but not used"
-       x == x                 // ERROR "x == x evaluated but not used"
-       x != x                 // ERROR "x != x evaluated but not used"
-       x != x                 // ERROR "x != x evaluated but not used"
-       x < x                  // ERROR "x < x evaluated but not used"
-       x >= x                 // ERROR "x >= x evaluated but not used"
-       x > x                  // ERROR "x > x evaluated but not used"
-       *tp                    // ERROR "\*tp evaluated but not used"
-       slice[0]               // ERROR "slice\[0\] evaluated but not used"
-       m[1]                   // ERROR "m\[1\] evaluated but not used"
-       len(slice)             // ERROR "len\(slice\) evaluated but not used"
-       make(chan int)         // ERROR "make\(chan int\) evaluated but not used"
-       make(map[int]int)      // ERROR "make\(map\[int\]int\) evaluated but not used"
-       make([]int, 1)         // ERROR "make\(\[\]int, 1\) evaluated but not used"
-       x * x                  // ERROR "x \* x evaluated but not used"
-       x / x                  // ERROR "x / x evaluated but not used"
-       x % x                  // ERROR "x % x evaluated but not used"
-       x << x                 // ERROR "x << x evaluated but not used"
-       x >> x                 // ERROR "x >> x evaluated but not used"
-       x & x                  // ERROR "x & x evaluated but not used"
-       x &^ x                 // ERROR "x &\^ x evaluated but not used"
-       new(int)               // ERROR "new\(int\) evaluated but not used"
-       !b                     // ERROR "!b evaluated but not used"
-       ^x                     // ERROR "\^x evaluated but not used"
-       +x                     // ERROR "\+x evaluated but not used"
-       -x                     // ERROR "-x evaluated but not used"
-       b || b                 // ERROR "b \|\| b evaluated but not used"
+       _ = delete(m, 1)       // ERROR "delete\(m, 1\) .*used as value"
+       t.X                    // ERROR "t.X .* not used"
+       tp.X                   // ERROR "tp.X .* not used"
+       t.M                    // ERROR "t.M .* not used"
+       I.M                    // ERROR "I.M .* not used"
+       i.(T)                  // ERROR "i.\(T\) .* not used"
+       x == x                 // ERROR "x == x .* not used"
+       x != x                 // ERROR "x != x .* not used"
+       x != x                 // ERROR "x != x .* not used"
+       x < x                  // ERROR "x < x .* not used"
+       x >= x                 // ERROR "x >= x .* not used"
+       x > x                  // ERROR "x > x .* not used"
+       *tp                    // ERROR "\*tp .* not used"
+       slice[0]               // ERROR "slice\[0\] .* not used"
+       m[1]                   // ERROR "m\[1\] .* not used"
+       len(slice)             // ERROR "len\(slice\) .* not used"
+       make(chan int)         // ERROR "make\(chan int\) .* not used"
+       make(map[int]int)      // ERROR "make\(map\[int\]int\) .* not used"
+       make([]int, 1)         // ERROR "make\(\[\]int, 1\) .* not used"
+       x * x                  // ERROR "x \* x .* not used"
+       x / x                  // ERROR "x / x .* not used"
+       x % x                  // ERROR "x % x .* not used"
+       x << x                 // ERROR "x << x .* not used"
+       x >> x                 // ERROR "x >> x .* not used"
+       x & x                  // ERROR "x & x .* not used"
+       x &^ x                 // ERROR "x &\^ x .* not used"
+       new(int)               // ERROR "new\(int\) .* not used"
+       !b                     // ERROR "!b .* not used"
+       ^x                     // ERROR "\^x .* not used"
+       +x                     // ERROR "\+x .* not used"
+       -x                     // ERROR "-x .* not used"
+       b || b                 // ERROR "b \|\| b .* not used"
        panic(1)               // ok
-       _ = panic(1)           // ERROR "panic\(1\) used as value"
+       _ = panic(1)           // ERROR "panic\(1\) .*used as value"
        print(1)               // ok
-       _ = print(1)           // ERROR "print\(1\) used as value"
+       _ = print(1)           // ERROR "print\(1\) .*used as value"
        println(1)             // ok
-       _ = println(1)         // ERROR "println\(1\) used as value"
+       _ = println(1)         // ERROR "println\(1\) .*used as value"
        c <- 1                 // ok
-       slice[1:1]             // ERROR "slice\[1:1\] evaluated but not used"
-       array[1:1]             // ERROR "array\[1:1\] evaluated but not used"
-       s[1:1]                 // ERROR "s\[1:1\] evaluated but not used"
-       slice[1:1:1]           // ERROR "slice\[1:1:1\] evaluated but not used"
-       array[1:1:1]           // ERROR "array\[1:1:1\] evaluated but not used"
+       slice[1:1]             // ERROR "slice\[1:1\] .* not used"
+       array[1:1]             // ERROR "array\[1:1\] .* not used"
+       s[1:1]                 // ERROR "s\[1:1\] .* not used"
+       slice[1:1:1]           // ERROR "slice\[1:1:1\] .* not used"
+       array[1:1:1]           // ERROR "array\[1:1:1\] .* not used"
        recover()              // ok
        <-c                    // ok
-       string(r)              // ERROR "string\(r\) evaluated but not used"
-       iota                   // ERROR "undefined: iota"
-       real(cp)               // ERROR "real\(cp\) evaluated but not used"
-       imag(cp)               // ERROR "imag\(cp\) evaluated but not used"
-       complex(1, 2)          // ERROR "complex\(1, 2\) evaluated but not used"
-       unsafe.Alignof(t.X)    // ERROR "unsafe.Alignof\(t.X\) evaluated but not used"
-       unsafe.Offsetof(t.X)   // ERROR "unsafe.Offsetof\(t.X\) evaluated but not used"
-       unsafe.Sizeof(t)       // ERROR "unsafe.Sizeof\(t\) evaluated but not used"
-       _ = int                // ERROR "type int is not an expression"
-       (x)                    // ERROR "x evaluated but not used"
-       _ = new(x2)            // ERROR "x2 is not a type"
-       _ = new(1 + 1)         // ERROR "1 \+ 1 is not a type"
+       string(r)              // ERROR "string\(r\) .* not used"
+       iota                   // ERROR "undefined: iota|cannot use iota"
+       real(cp)               // ERROR "real\(cp\) .* not used"
+       imag(cp)               // ERROR "imag\(cp\) .* not used"
+       complex(1, 2)          // ERROR "complex\(1, 2\) .* not used"
+       unsafe.Alignof(t.X)    // ERROR "unsafe.Alignof\(t.X\) .* not used"
+       unsafe.Offsetof(t.X)   // ERROR "unsafe.Offsetof\(t.X\) .* not used"
+       unsafe.Sizeof(t)       // ERROR "unsafe.Sizeof\(t\) .* not used"
+       _ = int                // ERROR "type int is not an expression|not an expression"
+       (x)                    // ERROR "x .* not used|not used"
+       _ = new(x2)            // ERROR "x2 is not a type|not a type"
+       // Disabled due to issue #43125.
+       // _ = new(1 + 1)         // DISABLED "1 \+ 1 is not a type"
 }