code: func (f *file) lintErrorReturn() {
  	f.walk(func(n ast.Node) bool {
  		fn, ok := n.(*ast.FuncDecl)
  		if !ok || fn.Type.Results == nil {
  			return true
  		}
  		ret := fn.Type.Results.List
  		if len(ret) <= 1 {
  			return true
  		}
  		if isIdent(ret[len(ret)-1].Type, "error") {
  			return true
  		}
  		// An error return parameter should be the last parameter.
  		// Flag any error parameters found before the last.
  		for _, r := range ret[:len(ret)-1] {
  			if isIdent(r.Type, "error") {
  				f.errorf(fn, 0.9, category("arg-order"), "error should be the last type when returning multiple items")
  				break // only flag one
  			}
  		}
  		return true
  	})
  }
docs: // lintErrorReturn examines function declarations that return an error.
  // It complains if the error isn't the last parameter.