File: extract_variable-67905.txt

package info (click to toggle)
golang-golang-x-tools 1%3A0.25.0%2Bds-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 22,724 kB
  • sloc: javascript: 2,027; asm: 1,645; sh: 166; yacc: 155; makefile: 49; ansic: 8
file content (29 lines) | stat: -rw-r--r-- 625 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
This test verifies the fix for golang/go#67905: Extract variable from type
switch produces invalid code

-- go.mod --
module mod.test/extract

go 1.18

-- extract_switch.go --
package extract

import (
	"io"
)

func f() io.Reader

func main() {
	switch r := f().(type) { //@codeactionedit("f()", "refactor.extract", type_switch_func_call)
	default:
		_ = r
	}
}

-- @type_switch_func_call/extract_switch.go --
@@ -10 +10,2 @@
-	switch r := f().(type) { //@codeactionedit("f()", "refactor.extract", type_switch_func_call)
+	x := f()
+	switch r := x.(type) { //@codeactionedit("f()", "refactor.extract", type_switch_func_call)