Clang does not recognize that calls to error() terminate execution
and complains about uninitialized variable use that happens after calls
to error(). This noop patchset fixes this.

Signed-off-by: Peter Oskolkov <p...@google.com>

---
 tools/testing/selftests/net/reuseport_addr_any.c | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/tools/testing/selftests/net/reuseport_addr_any.c 
b/tools/testing/selftests/net/reuseport_addr_any.c
index 6f54d425dba9..1e49cf9acf98 100644
--- a/tools/testing/selftests/net/reuseport_addr_any.c
+++ b/tools/testing/selftests/net/reuseport_addr_any.c
@@ -60,6 +60,11 @@ static void build_rcv_fd(int family, int proto, int 
*rcv_fds, int count,
                break;
        default:
                error(1, 0, "Unsupported family %d", family);
+               /* clang does not recognize error() above as terminating
+                * the program, so it complains that saddr, sz are
+                * not initialized when this code path is taken. Silence it.
+                */
+               return;
        }
 
        for (i = 0; i < count; ++i) {
@@ -128,6 +133,11 @@ static int connect_and_send(int family, int proto)
        break;
        default:
                error(1, 0, "Unsupported family %d", family);
+               /* clang does not recognize error() above as terminating
+                * the program, so it complains that saddr, daddr, sz are
+                * not initialized when this code path is taken. Silence it.
+                */
+               return;
        }
 
        fd = socket(family, proto, 0);
-- 
2.20.1.415.g653613c723-goog

Reply via email to