Grigory Zubankov 6b60cb8a30
new nlreturn linter (#1267)
* new nlreturn linter

* fix: import order

Co-authored-by: Sergey Vilgelm <sergey.vilgelm@ibm.com>
2020-08-02 15:16:45 -05:00

162 lines
1.9 KiB
Go

//args: -Enlreturn
package testdata
func cha() {
ch := make(chan interface{})
ch1 := make(chan interface{})
ch2 := make(chan interface{})
select {
case <-ch:
return
case <-ch1:
{
a := 1
_ = a
{
a := 1
_ = a
return // ERROR "return with no blank line before"
}
return
}
return
case <-ch2:
{
a := 1
_ = a
return // ERROR "return with no blank line before"
}
return // ERROR "return with no blank line before"
}
}
func baz() {
switch 0 {
case 0:
a := 1
_ = a
fallthrough // ERROR "fallthrough with no blank line before"
case 1:
a := 1
_ = a
break // ERROR "break with no blank line before"
case 2:
break
}
}
func foo() int {
v := []int{}
for range v {
return 0
}
for range v {
for range v {
return 0
}
return 0 // ERROR "return with no blank line before"
}
o := []int{
0, 1,
}
return o[0]
}
func bar() int {
o := 1
if o == 1 {
if o == 0 {
return 1
}
return 0 // ERROR "return with no blank line before"
}
return o
}
func main() {
return
}
func bugNoAssignSmthHandling() string {
switch 0 {
case 0:
o := struct {
foo string
}{
"foo",
}
return o.foo // ERROR "return with no blank line before"
case 1:
o := struct {
foo string
}{
"foo",
}
return o.foo
}
return ""
}
func bugNoExprSmthHandling(string) {
switch 0 {
case 0:
bugNoExprSmthHandling(
"",
)
return // ERROR "return with no blank line before"
case 1:
bugNoExprSmthHandling(
"",
)
return
}
}
func bugNoDeferSmthHandling(string) {
switch 0 {
case 0:
defer bugNoDeferSmthHandling(
"",
)
return // ERROR "return with no blank line before"
case 1:
defer bugNoDeferSmthHandling(
"",
)
return
}
}
func bugNoGoSmthHandling(string) {
switch 0 {
case 0:
go bugNoGoSmthHandling(
"",
)
return // ERROR "return with no blank line before"
case 1:
go bugNoGoSmthHandling(
"",
)
return
}
}