45a959b
diff -up ./crypto/CryptoAuth.c.warnings ./crypto/CryptoAuth.c
221d320
--- ./crypto/CryptoAuth.c.warnings	2018-01-30 19:04:59.000000000 -0500
221d320
+++ ./crypto/CryptoAuth.c	2018-03-14 14:38:20.689851389 -0400
7b7226b
@@ -85,6 +85,8 @@ static inline void getSharedSecret(uint8
45a959b
                                    uint8_t passwordHash[32],
45a959b
                                    struct Log* logger)
45a959b
 {
45a959b
+#pragma GCC diagnostic push
45a959b
+#pragma GCC diagnostic ignored "-Wunused-result"
45a959b
     if (passwordHash == NULL) {
45a959b
         crypto_box_curve25519xsalsa20poly1305_beforenm(outputSecret, herPublicKey, myPrivateKey);
45a959b
     } else {
7b7226b
@@ -100,6 +102,7 @@ static inline void getSharedSecret(uint8
45a959b
         Bits_memcpy(buff.components.passwd, passwordHash, 32);
45a959b
         crypto_hash_sha256(outputSecret, buff.bytes, 64);
45a959b
     }
45a959b
+#pragma GCC diagnostic pop
45a959b
     if (Defined(Log_KEYS)) {
45a959b
         uint8_t myPublicKeyHex[65];
45a959b
         printHexPubKey(myPublicKeyHex, myPrivateKey);
2f8dfd1
diff -up ./dht/CJDHTConstants.h.warnings ./dht/CJDHTConstants.h
221d320
--- ./dht/CJDHTConstants.h.warnings	2018-01-30 19:04:59.000000000 -0500
221d320
+++ ./dht/CJDHTConstants.h	2018-03-14 14:38:20.689851389 -0400
2f8dfd1
@@ -17,7 +17,9 @@
2f8dfd1
 
2f8dfd1
 #include "benc/String.h"
2f8dfd1
 #include "util/version/Version.h"
2f8dfd1
-
2f8dfd1
+#pragma GCC diagnostic push
2f8dfd1
+#pragma GCC diagnostic ignored "-Wpragmas"
2f8dfd1
+#pragma GCC diagnostic ignored "-Wunused-const-variable"
2f8dfd1
 // Signifying that this message is a query and defining the query type.
2f8dfd1
 static String* const CJDHTConstants_QUERY = String_CONST_SO("q");
2f8dfd1
 
2f8dfd1
@@ -61,5 +63,5 @@ static String* const CJDHTConstants_ENC_
2f8dfd1
 // Encoding scheme and index for the closest peer along the path.
2f8dfd1
 static String* const CJDHTConstants_PEER_ENC_SCHEME = String_CONST_SO("pes");
2f8dfd1
 static String* const CJDHTConstants_PEER_ENC_INDEX = String_CONST_SO("pei");
2f8dfd1
-
2f8dfd1
+#pragma GCC diagnostic pop
2f8dfd1
 #endif
2f8dfd1
diff -up ./node_build/dependencies/libuv/test/test-getsockname.c.warnings ./node_build/dependencies/libuv/test/test-getsockname.c
221d320
--- ./node_build/dependencies/libuv/test/test-getsockname.c.warnings	2018-01-30 19:04:59.000000000 -0500
221d320
+++ ./node_build/dependencies/libuv/test/test-getsockname.c	2018-03-14 14:38:20.690851402 -0400
2f8dfd1
@@ -18,7 +18,7 @@
2f8dfd1
  * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
2f8dfd1
  * IN THE SOFTWARE.
2f8dfd1
  */
2f8dfd1
-
2f8dfd1
+#pragma GCC diagnostic ignored "-Wstrict-aliasing"
2f8dfd1
 #include "uv.h"
2f8dfd1
 #include "task.h"
2f8dfd1
 
7b7226b
diff -up ./util/Gcc.h.warnings ./util/Gcc.h
221d320
--- ./util/Gcc.h.warnings	2018-01-30 19:04:59.000000000 -0500
221d320
+++ ./util/Gcc.h	2018-03-14 14:38:20.690851402 -0400
221d320
@@ -52,6 +52,11 @@
7b7226b
 #define Gcc_USE_RET \
7b7226b
     __attribute__ ((warn_unused_result))
7b7226b
 
7b7226b
+#if __GNUC__ >= 7
7b7226b
+#define Gcc_FALLTHROUGH \
08ba4cd
+    __attribute__ ((fallthrough))
7b7226b
+#endif
7b7226b
+
7b7226b
 #elif defined(__clang__)
7b7226b
 
7b7226b
 #define Gcc_NORETURN \
221d320
@@ -62,6 +67,9 @@
08ba4cd
 
08ba4cd
 #endif
08ba4cd
 
08ba4cd
+#ifndef Gcc_FALLTHROUGH
08ba4cd
+    #define Gcc_FALLTHROUGH (void)0
08ba4cd
+#endif
08ba4cd
 #ifndef Gcc_PRINTF
08ba4cd
     #define Gcc_PRINTF( format_idx, arg_idx )
08ba4cd
 #endif
2f8dfd1
diff -up ./util/platform/netdev/NetPlatform_linux.c.warnings ./util/platform/netdev/NetPlatform_linux.c
221d320
--- ./util/platform/netdev/NetPlatform_linux.c.warnings	2018-01-30 19:04:59.000000000 -0500
221d320
+++ ./util/platform/netdev/NetPlatform_linux.c	2018-03-14 14:42:14.668850488 -0400
78d1d51
@@ -36,6 +36,7 @@
78d1d51
 #include <linux/route.h>
78d1d51
 #if ! defined(android)
78d1d51
     #include <linux/ipv6_route.h>
78d1d51
+    #include <linux/ipv6.h>
78d1d51
 #endif
78d1d51
 #include <linux/netlink.h>
78d1d51
 #include <linux/rtnetlink.h>
221d320
@@ -78,7 +79,7 @@ static int socketForIfName(const char* i
221d320
     }
221d320
 
221d320
     memset(ifRequestOut, 0, sizeof(struct ifreq));
221d320
-    strncpy(ifRequestOut->ifr_name, interfaceName, IFNAMSIZ);
221d320
+    strncpy(ifRequestOut->ifr_name, interfaceName, IFNAMSIZ - 1);
221d320
 
221d320
     if (ioctl(s, SIOCGIFINDEX, ifRequestOut) < 0) {
221d320
         int err = errno;
221d320
@@ -167,7 +168,7 @@ void NetPlatform_addAddress(const char*
2f8dfd1
             Except_throw(eh, "ioctl(SIOCSIFADDR) failed: [%s]", strerror(err));
2f8dfd1
         }
2f8dfd1
 
cef3e37
-        uint32_t x = (uint32_t)~0 << (32 - prefixLen);
2f8dfd1
+        uint32_t x = ~0U << (32 - prefixLen);
2f8dfd1
         x = Endian_hostToBigEndian32(x);
2f8dfd1
         memcpy(&sin.sin_addr, &x, 4);
2f8dfd1
         memcpy(&ifRequest.ifr_addr, &sin, sizeof(struct sockaddr_in));
2f8dfd1
diff -up ./util/platform/Sockaddr.c.warnings ./util/platform/Sockaddr.c
221d320
--- ./util/platform/Sockaddr.c.warnings	2018-01-30 19:04:59.000000000 -0500
221d320
+++ ./util/platform/Sockaddr.c	2018-03-14 14:38:20.691851415 -0400
2f8dfd1
@@ -12,6 +12,7 @@
2f8dfd1
  * You should have received a copy of the GNU General Public License
4b7aed7
  * along with this program.  If not, see <https://www.gnu.org/licenses/>.
2f8dfd1
  */
2f8dfd1
+#pragma GCC diagnostic ignored "-Wstrict-aliasing"
2f8dfd1
 #include "util/events/libuv/UvWrapper.h"
2f8dfd1
 #include "benc/String.h"
2f8dfd1
 #include "memory/Allocator.h"