Closed
Description
Sometimes it makes sense to have code organised this way:
if cond {
// explain a rather non-obvious condition checked by this if()
return true
}
// I expect more cases to appear where I need to return true,
// but for now the above case is the only one.
return false
Gosimple's check S1008 suggests to replace this with a plain return cond
.
If a conditional if smth { return true }
has comments inside, then do not suggest to fold it with the code that follows.
Activity
Dynom commentedon Apr 4, 2024
Wouldn't this be a prime candidate to use the ignore tag's?
e.g.:
//lint:ignore S1008 explain a rather non-obvious condition checked by this if()
?artem-anisimov-0x7f commentedon Apr 4, 2024
Of course not.
//lint:ignore
is positively ugly.Dynom commentedon Apr 4, 2024
To have the linter assume that when there are comments in place it's "OK", you already add comments. Adding a prefix to be more explicit about it instead of assuming sounds much more robust to me. Plus it allows you to find it in the future, something you've already planned for.
Dynom commentedon Apr 4, 2024
Either way, reads like a dupe of #704
S1008: don't flag if both branches are commented
S1008: don't flag if both branches are commented
S1008: allow either branch to be documented
S1008: don't flag if both branches are commented