--- old/make/launcher/Launcher-jdk.pack.gmk 2018-06-13 22:05:40.828049396 +0530 +++ new/make/launcher/Launcher-jdk.pack.gmk 2018-06-13 22:05:40.696049391 +0530 @@ -90,7 +90,6 @@ CFLAGS_linux := -fPIC, \ CFLAGS_solaris := -KPIC, \ CFLAGS_macosx := -fPIC, \ - DISABLED_WARNINGS_gcc := unused-result implicit-fallthrough, \ LDFLAGS := $(UNPACKEXE_ZIPOBJS) \ $(LDFLAGS_JDKEXE) $(LDFLAGS_CXX_JDK) \ $(call SET_SHARED_LIBRARY_ORIGIN), \ --- old/src/jdk.pack/share/native/common-unpack/unpack.cpp 2018-06-13 22:05:41.188049409 +0530 +++ new/src/jdk.pack/share/native/common-unpack/unpack.cpp 2018-06-13 22:05:41.056049404 +0530 @@ -1799,6 +1799,7 @@ case 'B': case 'H': case 'I': case 'V': // unsigned_int case 'S': // signed_int --lp; // reparse + /* fall through */ case 'F': lp = parseIntLayout(lp, b, EK_INT); break; @@ -3710,6 +3711,7 @@ if (value.b.ptr == null) return ref(0)->string(); // else fall through: + /* fall through */ case CONSTANT_Utf8: buf = value.b; break; @@ -4216,6 +4218,7 @@ case _invokeinit_self_option: classRef = thisClass; break; case _invokeinit_super_option: classRef = superClass; break; default: assert(bc == _invokeinit_op+_invokeinit_new_option); + /* fall through */ case _invokeinit_new_option: classRef = newClass; break; } wp[-1] = origBC; // overwrite with origBC --- old/src/jdk.pack/share/native/common-unpack/zip.cpp 2018-06-13 22:05:41.576049424 +0530 +++ new/src/jdk.pack/share/native/common-unpack/zip.cpp 2018-06-13 22:05:41.444049419 +0530 @@ -533,6 +533,8 @@ char* bufptr = (char*) buf; char* inbuf = u->gzin->inbuf; size_t inbuflen = sizeof(u->gzin->inbuf); + // capture return values from fread to avoid -Werror=unused-result issues + size_t ret = 0; unpacker::read_input_fn_t read_gzin_fn = (unpacker::read_input_fn_t) u->gzin->read_input_fn; z_stream& zs = *(z_stream*) u->gzin->zstream; @@ -579,8 +581,8 @@ fseek(u->infileptr, -TRAILER_LEN, SEEK_END); uint filecrc; uint filelen; - fread(&filecrc, sizeof(filecrc), 1, u->infileptr); - fread(&filelen, sizeof(filelen), 1, u->infileptr); + ret = fread(&filecrc, sizeof(filecrc), 1, u->infileptr); + ret = fread(&filelen, sizeof(filelen), 1, u->infileptr); filecrc = SWAP_INT(filecrc); filelen = SWAP_INT(filelen); if (u->gzin->gzcrc != filecrc ||