diff --git a/src/core/poll.c b/src/core/poll.c
index cb61ddf..3a9a44e 100644
--- a/src/core/poll.c
+++ b/src/core/poll.c
@@ -78,8 +78,8 @@
     }
     else {
 
-        //  POSIX platforms will sleep until timeout is expired,
-        //  so let's do the same on Windows.
+        /*  POSIX platforms will sleep until timeout is expired,
+            so let's do the same on Windows. */
         if (timeout > 0)
             nn_sleep(timeout);
         return 0;
diff --git a/src/ipc.h b/src/ipc.h
index 684dcee..a78bfb8 100644
--- a/src/ipc.h
+++ b/src/ipc.h
@@ -29,7 +29,7 @@
 
 #define NN_IPC -2
 
-// The object set here must be valid as long as you are using the socket
+/* The object set here must be valid as long as you are using the socket */
 #define NN_IPC_SEC_ATTR 1
 #define NN_IPC_OUTBUFSZ 2
 #define NN_IPC_INBUFSZ 3
diff --git a/tests/reqrep.c b/tests/reqrep.c
index 51cef41..b4b0a4f 100644
--- a/tests/reqrep.c
+++ b/tests/reqrep.c
@@ -168,9 +168,6 @@
     rep1 = test_socket (AF_SP, NN_REP);
     test_bind (rep1, SOCKET_ADDRESS);
     timeo = 100;
-//    rc = nn_setsockopt (rep1, NN_SOL_SOCKET, NN_RCVTIMEO,
-//       &timeo, sizeof (timeo));
-//    errno_assert (rc == 0);
     test_recv (rep1, "DEF");
 
     test_close (req1);
diff --git a/tests/ws.c b/tests/ws.c
index 1766743..8e9df46 100644
--- a/tests/ws.c
+++ b/tests/ws.c
@@ -108,15 +108,6 @@
     nn_assert (sz == sizeof (opt));
     nn_assert (opt == NN_WS_MSG_TYPE_BINARY);
 
-#if 0
-    //opt = 100;
-    //sz = sizeof (opt);
-    //rc = nn_getsockopt (sc, NN_WS, NN_WS_HANDSHAKE_TIMEOUT, &opt, &sz);
-    //errno_assert (rc == 0);
-    //nn_assert (sz == sizeof (opt));
-    //nn_assert (opt == 100);
-#endif
-
     /*  Default port 80 should be assumed if not explicitly declared. */
     rc = nn_connect (sc, "ws://127.0.0.1");
     errno_assert (rc >= 0);
