diff --git a/.github/travis_testsuite_1-expected_sha256sums.sh b/.github/travis_testsuite_1-expected_sha256sums.sh index 9cabb978..50bf32c8 100644 --- a/.github/travis_testsuite_1-expected_sha256sums.sh +++ b/.github/travis_testsuite_1-expected_sha256sums.sh @@ -46,164 +46,164 @@ b8c35fa2956da17ca505956e9f5017bb5f3a746322647e24ccb8ff28059cafa4 *powerpc-linux. a0950546dc17fca9437219431d8ddb0249ce5b08e899e0c799a87ac982adee70 *powerpc64le-linux.elf/upx-3.95 " expected_sha256sums__t110_compress_ucl_nrv2b_3_no_filter="\ -31687828680ca81472f208a0e2d2bfef1befba6683678476e237d5e110f8102d *amd64-linux.elf/upx-3.91 -df636a01e8c80f88cd8fbb6d7127105ad0291f6116b82913efa84a38a72e076f *amd64-linux.elf/upx-3.95 -10c249cd10b4384c8540434b324db4017b722836761fee8033839715d2210e8a *amd64-win64.pe/upx-3.95.exe -07ec1b89b99241593ecb8d3b7ffd5a44244713963e12912ebd6c1f05704c79af *arm-linux.elf/upx-3.95 -22c35590d10fc4ce294982a8b5996e812ce799636f8084e7f411a5c9a1f8795e *arm-wince.pe/upx-3.91.exe -8978f6ce19a2f7a2468fc87be6f65665968048c575d18a4027624269ae9b14b2 *arm64-linux.elf/upx-3.95 -9b4bf253d4f4da3e8ea267062c127ab89dcf508c2d046120d7f0e2689ba1af75 *armeb-linux.elf/upx-3.91 -5dca0053a296b335e7789d58357afc061da965feeff365544115b14f7d96563e *armeb-linux.elf/upx-3.95 -74a88d52307429fddbc53a278fdc49837abf57694fe6fbb0ad6524e20c8f947e *i386-dos32.djgpp2.coff/upx-3.91.exe -be9ec18e6cfa53598535d62dc1d2e6dd1a13c04ca4b80846f532780a1e1ea452 *i386-dos32.djgpp2.coff/upx-3.95.exe -d5272255467ff344ca79baab09ef82b06f3c1f2edc4ef576153404620dc78d4f *i386-linux.elf/upx-3.91 -8697ef165f6561fe3de7b5cf94b07795129f84bc9ca2f21c85d9a444acd61deb *i386-linux.elf/upx-3.95 -8540c5ad04459b7d6eb86c3a73254be926f0158d4b2d924bb88604be38b0b40a *i386-win32.pe/upx-3.91.exe -53cf3a356559b6c83157eac7dc5c5d014e5efe633881c1078f7e1ab7518ab2be *i386-win32.pe/upx-3.95.exe -2cbf76119eb9b9f3f7f76abab588b44136cf03bbbcc5df400883189b2c64b6c9 *m68k-atari.tos/upx-3.91.ttp -f00e4597e5d69b7249ddcd79cd0d06e8e4d62fa1b817946472a5290299875438 *mips-linux.elf/upx-3.95 -ba0ceea1766c1dbf9158f6314ff7784f019f78364727de54d0776e8876f2cc34 *mipsel-linux.elf/upx-3.91 -d0dcf899306d6672dabec5d054b02016339fea6ba22b7a126d4d17d751325df6 *mipsel-linux.elf/upx-3.95 -5d2aa52656cbb38fc7e135c8b81ef7e48ac791e45250f0000594d48849bd9d7a *powerpc-linux.elf/upx-3.91 -b2f844602277f7ec535e572756f924af297e71489377833ac99c30099392ab59 *powerpc-linux.elf/upx-3.95 -04b1cf50554b5184073979125ffa654135f94d624f58ac2597763c51fcbe6bdb *powerpc64le-linux.elf/upx-3.95 +2a2fb5658236c98e37e9b1414728ce9474ac38560944677c9f2c306f6e2cd134 *amd64-linux.elf/upx-3.91 +ee552e95c819a8ee815106f10eded2d8cce4d79870c7fe186f0566a64fee05ef *amd64-linux.elf/upx-3.95 +9c312f13ddd40a62fed7ee9f6a21fff15cae7517d4ddf55f493101b22d8e43f1 *amd64-win64.pe/upx-3.95.exe +515da09d08a9ecd51b2c9acbcfa5c69b843f4808940b5862484337b7f8156abc *arm-linux.elf/upx-3.95 +e0436401972603f7fad6c693e96c89c37370113e75b8bdb4d4ecd14dda4cd8fe *arm-wince.pe/upx-3.91.exe +685adc8628213eb92d2ba39deb10ca61ef73950cb816a6020d2e644cd7a962d0 *arm64-linux.elf/upx-3.95 +4a3d2ba78c90a16fdcdf556f131ba6758724d321caa6a95b7d17683e8287876e *armeb-linux.elf/upx-3.91 +119d3ecd88d3f178a895d618a94439107de32abde44c2b4ed59440a7cf12101e *armeb-linux.elf/upx-3.95 +a467edf8758a5b3e219bc193a9d143cb880f7d1a94771367cda7117129b34cfc *i386-dos32.djgpp2.coff/upx-3.91.exe +934593ba98f2dfff94197885894e7e56ff452da02a234e70734e2445b27ae8aa *i386-dos32.djgpp2.coff/upx-3.95.exe +df2f49106b8be9a15f1ab2720b948a151462cde67f2304def269f9094b5548b6 *i386-linux.elf/upx-3.91 +eb615ca3765f223aeab215a19e30a49390d64fcc36f24e14a74484d044bc50a9 *i386-linux.elf/upx-3.95 +9dd14ff1328b0d501aca10d36623b2b76c754e9677cc0bdd0c5ded740796cecf *i386-win32.pe/upx-3.91.exe +5320b28b44ae1a50ea435ccabf7fe94c8031be7375c425ed618cb1f9a649442f *i386-win32.pe/upx-3.95.exe +d30bf134c5231317ae2182059034842f58d906b9dc49546bbb552f4e0411085f *m68k-atari.tos/upx-3.91.ttp +2ecfc01d3d1953021f6dcd59597c24c1000b999bc67e8baa11d9b5029254c11d *mips-linux.elf/upx-3.95 +0f700683072abc5d05e39e5bddeca906ca2d5c6cbc646344c7031126107c4d50 *mipsel-linux.elf/upx-3.91 +64611ac432b8d1b9ac39ba3c55a8389bb909d1158e0c922a7327faa9b0f4e53b *mipsel-linux.elf/upx-3.95 +116f9146e14ab1094b046737ec3815d8d126ec22e51a04352f9efa4f56da3222 *powerpc-linux.elf/upx-3.91 +555a749addcc98d5c52dd2c5e7b55df180a3a4413e34de9f33e18064b0555e6f *powerpc-linux.elf/upx-3.95 +536e12cb941626cf5d2ff137b5dbd6a9a950aafe6a7639fdc8f6af5867743af6 *powerpc64le-linux.elf/upx-3.95 " expected_sha256sums__t120_compress_ucl_nrv2d_3_no_filter="\ -27e0e229323ab1754c0071295497910325086440b58baa584e3d3528653baa32 *amd64-linux.elf/upx-3.91 -68d75f5615b5e14ab6e6992380f071f0d172423f1c0b573a7e4ed66dee787ef4 *amd64-linux.elf/upx-3.95 -9b84f5db6d353eabfe3baecdf1fa052413b6447c2c265ad9fe0a5a1c47da2854 *amd64-win64.pe/upx-3.95.exe -d19aa340e4b1b25a667307e7644bdf2a17a013b88d00405f92110ad887ae2f7d *arm-linux.elf/upx-3.95 -6612b9f0e4195ea745d57d016ce6dd5d039c0143c0fff56dd0a4d258015f9699 *arm-wince.pe/upx-3.91.exe -72943cf61da8fcff43b2c2d259e8bcf5f6e941b8cba5a395b56e58e0ff45693a *arm64-linux.elf/upx-3.95 -95593943f5315d224fd44d1431a46e1d6c6ff1869c3e8ac5c6a1adef8e4049ce *armeb-linux.elf/upx-3.91 -6b4e6da1f467378a14eb326f904abef11fe0739104dbe7952146b2bcbbf9b7d0 *armeb-linux.elf/upx-3.95 -a9b78c16954759bb694a633e9e4c95ad325c0e17efee402d8efba1045f9b4f5e *i386-dos32.djgpp2.coff/upx-3.91.exe -529d5467590d02f4a0a887fed79703945ddabdde1c1ffec6fcf23da3f1bbcb4d *i386-dos32.djgpp2.coff/upx-3.95.exe -1a1c484c9986d9096b9367c6d44dceb73bdf5283266af55c30461584f1776c3d *i386-linux.elf/upx-3.91 -9745f8c65ff9b6e2844bc9fb0dbece10d91645fbb0f91e894a3449a5011989fe *i386-linux.elf/upx-3.95 -c3b0b992d5ffe170304321c9e8bd683d17056252baa7d87972563476a0af8159 *i386-win32.pe/upx-3.91.exe -6c075b3bdf2bad436f842df119684fcbfe4567b2695131d01beb803265f69b44 *i386-win32.pe/upx-3.95.exe -db4de6847df3bcd294a6a5e683ff670706ad09ea241c8344612b6527c402e6cf *m68k-atari.tos/upx-3.91.ttp -39d24e31d434c356610354196e56c21696f518ea0d1f8b9f329f21e168a8c58c *mips-linux.elf/upx-3.95 -f4e2342906765e080d232b094334db58abb13d0324a9be61a8105e3b701ce83d *mipsel-linux.elf/upx-3.91 -814851fb3f32adbcbc9abe419728c3af82b82ca18bebf0c446e8221e96904cc6 *mipsel-linux.elf/upx-3.95 -0b8efa533e35b5ba8d0ca36f42bc1c6d2d3b83cbd7b53a4539da4f667973b821 *powerpc-linux.elf/upx-3.91 -ec46c1dd1aac9e1453ec3c1c45ed6e53ba2fcc37747977f2c8d97dd4271920f0 *powerpc-linux.elf/upx-3.95 -f04924b13537d388af13dce5a3edaee546a037fc3aeeeda232d31b8a673271c0 *powerpc64le-linux.elf/upx-3.95 +ca61ce9dc17e49116f0f798ba6c57b1ea930a2e333ce2bf8d6905ccd8812ed36 *amd64-linux.elf/upx-3.91 +aa1e664e02d5fb762173e549d997ea44a9f4f3a7afde61e1624f7c43a86f1051 *amd64-linux.elf/upx-3.95 +1f40d3e26e266b7c305e01a0e480f936746d1c54df32826f5f6f16fbbe58f20b *amd64-win64.pe/upx-3.95.exe +429fa7ac57bf320180c5358093cabf7a9b6c14dbeaf50197f816cc7f03e2e105 *arm-linux.elf/upx-3.95 +856d307362db229387d3d33ad8478a8cba45c71d67d5bbf2d9794154a755722f *arm-wince.pe/upx-3.91.exe +e47e345ed2d573aca86262d7c1fcd28e3b3b4198e0fe9aac276992b4a1c98ebe *arm64-linux.elf/upx-3.95 +0504b75cfde9317471a928e7a357820e8212714c5060c766aa2c33e74927bb4a *armeb-linux.elf/upx-3.91 +c66b5e9fdcfe96ba63c0c1b94e0dc37e601804f6383daa47fa0cc2e87e1b738b *armeb-linux.elf/upx-3.95 +ee07e1e15ff7a467f9ad262daa12886211f107886cae154795651d3cdba6fba3 *i386-dos32.djgpp2.coff/upx-3.91.exe +f73ac819d5f7f81b7cf62198381a51273df6a697d5429a144f42fabef0bcc327 *i386-dos32.djgpp2.coff/upx-3.95.exe +c36ee57e4c62365f768d858f321f387aacb8e2c3501cd7ef12f7331f1513ab00 *i386-linux.elf/upx-3.91 +54d09f7a31990a674def3835d0554be89dcd0d88124e94640ff2c8331508314e *i386-linux.elf/upx-3.95 +7a667cc2b566ae2f8836cc3c21d55e45bf35d61beca22ec2a806d6bcbfa1f082 *i386-win32.pe/upx-3.91.exe +cdd58a31c4914bdde47f03d81b988ffc9aa2af482de775c88cae144b4ff04293 *i386-win32.pe/upx-3.95.exe +02b969917d52c4bd07e49e4ad589db8a1e4fa27984eac2eede03bc1abf73c376 *m68k-atari.tos/upx-3.91.ttp +d5bb53717497b18ed51fb05bc88fe720c35c7797857728b67f82b70b516eb3b9 *mips-linux.elf/upx-3.95 +2e7f1e34d53b972f52e53d72760b5e40a4f2fa012685440a28ab9987be740c59 *mipsel-linux.elf/upx-3.91 +abbb5b1b1a2454ea47b427af30bd759c6ad9982f71af2266a9c3aca3292aac44 *mipsel-linux.elf/upx-3.95 +45cf56fe5fab599bb5fb211a4b9ce77f8012e42158d6932e4f5bf9babb4cc301 *powerpc-linux.elf/upx-3.91 +91a4e8368a90355fdd04cdfa814df049a11f2d8f43a32eda8c46eef612c135ef *powerpc-linux.elf/upx-3.95 +73a218d650ae1e5b98cfd6e81e434652e53cb82420a74632b60a5a3a99dea236 *powerpc64le-linux.elf/upx-3.95 " expected_sha256sums__t130_compress_ucl_nrv2e_3_no_filter="\ -5060eb501a31f57211cfb94d1648b4713739876df7164d62bb55bd75ddd4c08b *amd64-linux.elf/upx-3.91 -d22546daf5cc97f1bc57e3d15dc9b1f330ce73a182f419d144247f5770b69c31 *amd64-linux.elf/upx-3.95 -c61d1957de3ed6dea8d06918fe437b07eb006e46fc8a79754e28b64d72bd1923 *amd64-win64.pe/upx-3.95.exe -9c76e31ae6278c0111d076b5d570dc7d945db816e87b0101c7c5c591f544c415 *arm-linux.elf/upx-3.95 -99fff7fd265615e50c815187e6cecc75225f97db813ee675e2e302cbb0215a60 *arm-wince.pe/upx-3.91.exe -dba3061a91ea20f96c71add4e1076243eed46a4cb8b7a8ac17cf1c73e9ff4a9c *arm64-linux.elf/upx-3.95 -75cf7fdd888c11257bc2d57dd1fc5e2ad47b86f8135c625f24d1132239cd88b2 *armeb-linux.elf/upx-3.91 -796b6bd12574acef467921907fe9340ef91b1ff2ad7015c653e1d4e43907b19b *armeb-linux.elf/upx-3.95 -039c5f378921a30f96d1e5cb394ed6b1726fb75949d8abf0eee30e776a2701b2 *i386-dos32.djgpp2.coff/upx-3.91.exe -e76b23ad8c8b68b170ff723f3e43a9dde230f5b0ad2dc08cdd6e31aa5f5f1b1d *i386-dos32.djgpp2.coff/upx-3.95.exe -32527780f1e07ffaabb3a3e0c18d022366b2e7350b5572fc258876f0b0727eb9 *i386-linux.elf/upx-3.91 -7df5941f65ec4428a5b2bd62825741776067fdad2881c89d6f094f54aa3223d0 *i386-linux.elf/upx-3.95 -037a3d31b8279d9aaf36cfc73e208e7bf0b3166c2ecbc82702b0cbb2afd97a39 *i386-win32.pe/upx-3.91.exe -d020ebadaef57cd48ef09e934a496475b6d6cd09e5883a754975faa750177881 *i386-win32.pe/upx-3.95.exe -345ce9f8dc5e431391c65443a7f71f1f43a0f79e55498d541ddce051dc52f8ed *m68k-atari.tos/upx-3.91.ttp -eb906e5c72ab6913e174da8832e6e155180267e178f6e79c9252108266aabb45 *mips-linux.elf/upx-3.95 -a41829324799ac4edc8fbdf5374e438c0dd999c54ade2cb0a0b4bdafc19dec96 *mipsel-linux.elf/upx-3.91 -4bc5ede4d51972615c0db0b60155b8c80e8ec06b8f101644d55e8dd291d2b8cc *mipsel-linux.elf/upx-3.95 -80f423fe250182b94012b28423f737a3bb2a1dc2f125433649373e4326058221 *powerpc-linux.elf/upx-3.91 -d056dadd3f67120bf244a71c4ff2428dc9404ad3d7d1acde9413dcc85df3a30a *powerpc-linux.elf/upx-3.95 -c1768b03bd2915b87838f1e4c9049610115946bbe15f2e8986752daf38ec75ca *powerpc64le-linux.elf/upx-3.95 +41463e6e80b573c313557f2f24ece2f4f69d6d341a73f4ac871f958bf0f96154 *amd64-linux.elf/upx-3.91 +4fa796da09703f7ef812899ed950847ee518867831eff4dade2c73f95699b439 *amd64-linux.elf/upx-3.95 +c9230d017885d7727ca766cb7933d0681a93ef21856c39fbf807899b734172c0 *amd64-win64.pe/upx-3.95.exe +d1ee418d8837fe8a105f6b018779f4449111a7b8c45708c8b0a9330fe7028233 *arm-linux.elf/upx-3.95 +6dbd0442d9e45c82d113463eb592d117c6761fd073e942342516fb0339d935e7 *arm-wince.pe/upx-3.91.exe +bb4b1152d0475441d77c0e3e76b7712aad7cf5dd16b630caeaff5b173b9be967 *arm64-linux.elf/upx-3.95 +d5a74eab2aa64f861775e2b631a38c9e96e1a5430aa572e76744d5be95e35016 *armeb-linux.elf/upx-3.91 +bbb10aa7a8db02b27557462dd4d2948ba3f46c0abc58d973370bd1fbbcc17cfa *armeb-linux.elf/upx-3.95 +dc6d412f41101e334f9e09c52e63f513e2b0bd047064283c0f7389276dd6d28b *i386-dos32.djgpp2.coff/upx-3.91.exe +0ab8e2454b1f5bfed09a8d0c231f4c595c7445b09077387ebb9348292206be59 *i386-dos32.djgpp2.coff/upx-3.95.exe +fbc09ce59596c3544edc724ecb7d6b15cda522aefba861ffc560cd6b2646eaab *i386-linux.elf/upx-3.91 +094d9af1eacaea56f3fbaa9b6395645a299522c34c771bce75e06e75a6bbf632 *i386-linux.elf/upx-3.95 +728c6dc0c02d9ea3f7a0c86595fd64423f5545651b3a7bbc9e708759d8eec157 *i386-win32.pe/upx-3.91.exe +8569f6942377259c5a92acfe5bf0b2874f6ef3af40177947a8055e7641a776ef *i386-win32.pe/upx-3.95.exe +c4753f47328d70823f85b5d378502556388ee0a9ea6bf100cd6c73651126b3fb *m68k-atari.tos/upx-3.91.ttp +6dc3fe925be6854cbc33e1a2812e578927ea81bf3f1a944e4b8d2904ac88e3f7 *mips-linux.elf/upx-3.95 +034593b89effa0abfb0eab14f728290943c4e8d9724b22b80a291d06ef5c9777 *mipsel-linux.elf/upx-3.91 +17880d1b54c63447162b577e8aeea59bca1d052ffa90e1f9592cb23203717a01 *mipsel-linux.elf/upx-3.95 +a5f92763de6916b32098ab6e8a7e403727343c65746480350526b0a34ee4635a *powerpc-linux.elf/upx-3.91 +3cdc2bed1600f29147fdad205101d328cb7154201f4e319c62b99b0a79877d9f *powerpc-linux.elf/upx-3.95 +bd56e86e5df812cd186a242845f80efbed13842344081f178b742457db245b5b *powerpc64le-linux.elf/upx-3.95 " expected_sha256sums__t140_compress_lzma_2_no_filter="\ -7c6797075ae1b010e110ba6e20d5b9f02d1122c3f467a6b5615f6219f97f156f *amd64-linux.elf/upx-3.91 -1cf2c1dd4be371a3ce4e69ee230f5f1604990aa3a40547f7459e4db69665f2bd *amd64-linux.elf/upx-3.95 -2e452434de48446341582a16ff5408ebbf382463c2c9fe779e2db070d11f0be3 *amd64-win64.pe/upx-3.95.exe -17a3c2c165919e9fd94151c2ac384e31131fc9e55e879ad7dcbbb1cc81ba267f *arm-linux.elf/upx-3.95 -bd6fa52a5eac47662323d5f5dd3632c6273f6e4fab9b996f8349102763e14b47 *arm-wince.pe/upx-3.91.exe -e0413d3a53a6bcfd35941f6f8b7616c1144d3544155886a99042a9a58c4fd697 *arm64-linux.elf/upx-3.95 -38c4f62e97dcd356c6c8e33f1f48cd70d100de1ba3867abb15d14ba316f4b2cc *armeb-linux.elf/upx-3.91 -2351b95d38781a8c8cbe597070dca339052f2b035ddad0279a73589fc502a4c8 *armeb-linux.elf/upx-3.95 -2b4df508546ce016ffe08172144ebfa5a9f5de7c09e909a6dfea83d8e733869a *i386-dos32.djgpp2.coff/upx-3.91.exe -304d0e6a873101b58e77b7c1c6605c2f5a1601dee78c620572716d72d493bf47 *i386-dos32.djgpp2.coff/upx-3.95.exe -7d4617a22ac0b4dc09b101a7e5114b75f43a0c16c98b30d8f27557d385214fd5 *i386-linux.elf/upx-3.91 -c226ad1b3d8a8285bfc8a722e34fc04e364f19c97df11b95681f488742f1c08e *i386-linux.elf/upx-3.95 -115c67104bd8050e4e0eef3ed1c4d03db4d949188434bbfd1587d0483abb7c17 *i386-win32.pe/upx-3.91.exe -cfd1bb7a6ef840d6161a2aef032b14c947d78a9c8eee43143d7cecc9241854d1 *i386-win32.pe/upx-3.95.exe -69e047dc3f180b185c2b30f0211b25a8b29605913ca1abbaf6fb037194ba404e *m68k-atari.tos/upx-3.91.ttp -ee29e0532f2ed44b3edc710b67f1b7e8150e536c4f9c0fa9a06c1fce6a0b4b4d *mips-linux.elf/upx-3.95 -867ef1444b506e4c28e20b2b61a86ad9f6dbca28b0ef64335fe83b1737b6487e *mipsel-linux.elf/upx-3.91 -9e6302df3d28fb23bf43442eece28e8565fd1e760f270b8cc4f845052b6864f8 *mipsel-linux.elf/upx-3.95 -804526cce0cb4ebd9cb09d812b2f3cd71438caffdac1965ab496e57693a3cdff *powerpc-linux.elf/upx-3.91 -c2c20ffda5caafb1feae9be70885d27e25a64b23ca81f99b48dc2fa5084358f2 *powerpc-linux.elf/upx-3.95 -1efa66942db0df143278720e8f849265a27715d7e5ca5ef815f16099242e944f *powerpc64le-linux.elf/upx-3.95 +e86b14ab4e2e5959d0d06c307c3f12f8e7a5963c0ac1d2d041a6a312c901a667 *amd64-linux.elf/upx-3.91 +c071fce40198a3776b3e13ae1d1ab744bfb52c26c7a62cb37f29db5dae2f2165 *amd64-linux.elf/upx-3.95 +255ef236a7fe03865dd300ce447c57754aef05de537564f38715eef64285c6fa *amd64-win64.pe/upx-3.95.exe +4f0121d833f0ac6b48265876c6f376c1092d1ba1b7d35d4770eff8ff1c5b38a6 *arm-linux.elf/upx-3.95 +14f77ebb33e788aa8f9a9ad608232c3f9047dc6dfd55ceb02244a36cac9aea25 *arm-wince.pe/upx-3.91.exe +538bc5a146399f804ec9da39bf76d47d54b85ee015b041d2dcaded4c2c9aefb4 *arm64-linux.elf/upx-3.95 +ae7b3282c3e48f109aefaa2f7b78441e66f5b60b1f4d4f54d8c44f02d1df1419 *armeb-linux.elf/upx-3.91 +6a00f999acd05f25babece645a7f689fc3549fdf3ce3ccb09289a8b2501095e3 *armeb-linux.elf/upx-3.95 +3a94cec95fd3eac557bf929b372b20b155e8d331e44e47eb3486b048ebb36c9f *i386-dos32.djgpp2.coff/upx-3.91.exe +632b63bce916203d52d997d191728667d1091694a5cfc1a2ed327b540357e7e9 *i386-dos32.djgpp2.coff/upx-3.95.exe +6840b393d6789f70c5e37198d9584bbffc1a65dcd4d74e22ef70db602df19be2 *i386-linux.elf/upx-3.91 +a09485ced8a32585be3ef6b189b3e2fc6012e038f4cc800f7555ee1cbb16f8d0 *i386-linux.elf/upx-3.95 +cf3c0f31aca86f30edb45e4bd945997d7acca9c2d54acfc427936fe4ff2ba355 *i386-win32.pe/upx-3.91.exe +c774fb5e3dcc0a00fa58ce223c30d7805f2f96606d9dddda30075c6a6c35a639 *i386-win32.pe/upx-3.95.exe +3be124d31c578530d8aa4da4ad53346a6fd62c8d4f3a9b1d068d5f912d9117ee *m68k-atari.tos/upx-3.91.ttp +c3389ae9afdb7d63e658582b844e02d2aa1b8e049f1036401ec627e70ce3a889 *mips-linux.elf/upx-3.95 +e8c8cbad02b96c657eec652104d9e7f378e0b69e4c15e5e3c5ceaa5d6fcc998d *mipsel-linux.elf/upx-3.91 +acd4323ea000bbe80775ec538e2c987e5d7f272824ac014181867abd2e9c6177 *mipsel-linux.elf/upx-3.95 +9e10ad0bc353002bc8b301e887c9ee72f9bb540facee93a989fea1fcc5aeb377 *powerpc-linux.elf/upx-3.91 +764ba518f31924d45584c0e25bcd2649bc5e219ab97906d5c96e34d7a4680f63 *powerpc-linux.elf/upx-3.95 +063de1c1d77eb9c733a95f10dfc24d8e1c30250b0ffffccd008b10bb9f116e9a *powerpc64le-linux.elf/upx-3.95 " expected_sha256sums__t150_compress_ucl_2_all_filters="\ -0cf7079a364607774e6466408bf8e13e3581fa5ee3dd81a62658b2ead667d5b1 *amd64-linux.elf/upx-3.91 -70fef60ebf229681ab928959414308526429efa16a02a8b0c72e8d2fc6a0196c *amd64-linux.elf/upx-3.95 -ad15b341d20307332f2350a2645a450faedad76006e035c895e16b04cd3f4f01 *amd64-win64.pe/upx-3.95.exe -0a57154bfde6811537b752b1f6929931570e10809848a83027cb74d11d956c4b *arm-linux.elf/upx-3.95 -15dbf7ed4608d9eb0859a07d70eae0ddb1cb17d01a8cca719d85c480a6bfccba *arm-wince.pe/upx-3.91.exe -3799600cbd3c4b7874c8f6c19d21106f72bc7500b24e6ec7926006bba52ca87b *arm64-linux.elf/upx-3.95 -54b3ba96df6449cf1540b57b88fe7a6d3b114c2a16a9a4ccdb5b8315ada441be *armeb-linux.elf/upx-3.91 -a911edc3b40695b5f4d1eaa83905afad34179803e194de89972d829ef3cda5d9 *armeb-linux.elf/upx-3.95 -5ec8168062b88fb09488e90db7db2756f1b5260a88a67bbfcd9f27a91caf5b11 *i386-dos32.djgpp2.coff/upx-3.91.exe -e260e9e5ed5021ee938c8d6e8626a4423582a8601f18ba95c8e85ad187dace46 *i386-dos32.djgpp2.coff/upx-3.95.exe -9c077c526d697413ba968e57bdcc9c29945def3158c97c52e9bec3dca831bffd *i386-linux.elf/upx-3.91 -b99b2fe18e5f82cc342871c5cc9507f63545329cbcf3d7c0cfe31087b9e0c582 *i386-linux.elf/upx-3.95 -b9586543dba85f26e1bcf6c6670a26729a1534879ca2f821cd385749aec4d925 *i386-win32.pe/upx-3.91.exe -5d69a231bf70ac4cf3e1f49067c61ab11086721fa8fd64dd750fd685987432e5 *i386-win32.pe/upx-3.95.exe -42488024e1730c93d78a54f272346239b3236eaf3a57a7fe6ba83f642a539c65 *m68k-atari.tos/upx-3.91.ttp -7ff5ac192952cbd9a53b74c0b6baf51be984997992183ddec90d228d3f3e3224 *mips-linux.elf/upx-3.95 -5894fd36fda2a7648fd98ccb3337263b5a579272b1f3d54eb8bade85def5a8b0 *mipsel-linux.elf/upx-3.91 -79eb55515414e5a50a916f1d9432272c9f4c33a839d0a0d0cf77dc097b8055aa *mipsel-linux.elf/upx-3.95 -e88aec6af37ecc7c4cfb12cfd9faa95df103e40dc70c806119628c386c62b1c8 *powerpc-linux.elf/upx-3.91 -d52c1f60e55520a18f5582a3ab3dcb35ebb467e2df19ba39460e97a18a286612 *powerpc-linux.elf/upx-3.95 -005d8d34e2f0eeb8dc71c18ee17df11e8f3e3b0519bdc8cfd98cf47da16ee133 *powerpc64le-linux.elf/upx-3.95 +9720ddbaf7ed802a0502bedc6ef0cb1ca7ad66b7c5c6cdc9045500f86d463395 *amd64-linux.elf/upx-3.91 +23da86d42a5c9d16bdbfccccecdf64b8205bf02faf3b8941ff9cc31a8cf768dc *amd64-linux.elf/upx-3.95 +8cf83b49aab1a366318591fe69d87408ec1f7b36c3470a9cee82fd1fc39d7899 *amd64-win64.pe/upx-3.95.exe +5765d26681d60081c9196e301ab529bb31c3449c5f1d6b2f488774648aeea51e *arm-linux.elf/upx-3.95 +040117965a54878b7665b7f8155230e0f171a7749c961a1dca26eb76719b3b97 *arm-wince.pe/upx-3.91.exe +3206ca37f3a616f7c4098e54b63708b1e41386242730845ff0f94fd1fd71a2b2 *arm64-linux.elf/upx-3.95 +2440a34022c00a4db02513abe28e6dc9a75e726cebe741b1853a6ff75b1509ea *armeb-linux.elf/upx-3.91 +9994c5b0f43c355ffa73cc4ec26e4f50933677a22604a67259974f81f8dd982f *armeb-linux.elf/upx-3.95 +1584cbffe0037e9e3c441aeac8fc2ef226ee78d0430d4298070c7258a5de650e *i386-dos32.djgpp2.coff/upx-3.91.exe +da37d160c4c185dfb7c0754637278a512503ecc396741678adfda38423eaae44 *i386-dos32.djgpp2.coff/upx-3.95.exe +cef9a4da667039729e43ab577d20f79129f0025ac3c3c094e5150162d7c723b0 *i386-linux.elf/upx-3.91 +5bd4602085a470c9ff431eaa0328bf2b3eabdd7ab94a6ea3995ff8b0b0648b1a *i386-linux.elf/upx-3.95 +6cc7deccbafc7c5a658a017ca18613b004d3b9b21e2a4e08343f92fbb82587fb *i386-win32.pe/upx-3.91.exe +43c04b1eef6ea89821dc8689f09865008784fcb2152cbc59a3be7c091a56a536 *i386-win32.pe/upx-3.95.exe +d0ccb6fa3cb2557923c494a5d41615e2ba6687960144a98ae575761d20ff29d6 *m68k-atari.tos/upx-3.91.ttp +310b4a687d2acf5f65211150fedba41e902a0fda70b105854b9035545139ad2c *mips-linux.elf/upx-3.95 +24652a86d2291350213949d16ed79e4158abaffade30f7e8bd8373c2ed5f04d4 *mipsel-linux.elf/upx-3.91 +15d8e16b5a4f9f7c945570d8ddaafcbe9b7cec72e0fb77bb9c8b74bc0e694445 *mipsel-linux.elf/upx-3.95 +1712474e8b83a3e812996b783d3fbc7e772302e676c7b7f13a132ee20254d95e *powerpc-linux.elf/upx-3.91 +a0674600a44e8e19fc2bc432f9d2891f71221facd9c48b0df5ebe1183d75751f *powerpc-linux.elf/upx-3.95 +2d16f4f2189d12d13a5a1da70624275ccea06f40ca41036bf0238c4e595a04d6 *powerpc64le-linux.elf/upx-3.95 " expected_sha256sums__t160_compress_all_methods_1_no_filter="\ -317a0ade9e4f9f76ad30becd1c632d0f6e401eedc1c729eab13071dde3fdb948 *amd64-linux.elf/upx-3.91 -fd53e48be7a659905bd83f82ad3d483771d835171b3f078782587cd6830ef852 *amd64-linux.elf/upx-3.95 -d8c5e63e38fa76628fa0b7382bac038b3d490afa0b66b85ab2f3c12f362a81e9 *amd64-win64.pe/upx-3.95.exe -0aa06eab213d0b8fa1da0e7e93565728b48a061d1f98e8a9f71eb93539aaa309 *arm-linux.elf/upx-3.95 -79fac525c9020641c98faab36ce50cc7b244cf9d47f53b892294807c2a5c5499 *arm-wince.pe/upx-3.91.exe -c3ee6b003717abebca6a9e1d204d809df011ccbb48fac86223a2576bcb3520d4 *arm64-linux.elf/upx-3.95 -50e38568e0e0169b363d30cd63e6ef1bc8288cd3d09ea6a1dc173eb7c74f2970 *armeb-linux.elf/upx-3.91 -bae6d4c31f04515116555bbeb1fdd5385ce910c8fe8aafd275a7cc082d2f9ef8 *armeb-linux.elf/upx-3.95 -a518753d85e0b86047454ee0670faa074e7a1202757331266518a2db3a453ceb *i386-dos32.djgpp2.coff/upx-3.91.exe -aae9339ea05625db49baf5cac5101ca84219aac781cda1c22fa160e79f0dd4a1 *i386-dos32.djgpp2.coff/upx-3.95.exe -6ca49ee520a08754e4cd2ce5c338868f1f9b8fe9759ff323b8b47bd62fabdb3c *i386-linux.elf/upx-3.91 -709790d54ea6031fb27e6120501ec14fd3ce18a835de3d83b1100f91e9df44ee *i386-linux.elf/upx-3.95 -fa611285da63c3ca078deec6d3622b231837884a3f580f35986992626f68d133 *i386-win32.pe/upx-3.91.exe -193f07b796958a494a25f6097515f877045fb6985b39af4c391835e1baf0cf18 *i386-win32.pe/upx-3.95.exe -011e049c4a5c253536df8654f842119b4b6bc1ea93fb4711367f1b25d73ef584 *m68k-atari.tos/upx-3.91.ttp -c3bd374d585fadbe33229f87e7c4e840caf81e90587ccbd94b74dfd937b8cdf7 *mips-linux.elf/upx-3.95 -690175c0a5aadbda88c82d852f9d33773ec30b3d279a9cb4903d598f98891fa0 *mipsel-linux.elf/upx-3.91 -7985048cfa368fcb6e12e5f0184769e9a30f7a3b7428d72af16b9babab6aca94 *mipsel-linux.elf/upx-3.95 -765844683cfc98b1c8c0d152837a483aca2b3153e886a43958e784a1e8bcd834 *powerpc-linux.elf/upx-3.91 -17ed499521738d11858b23c6c965f1c0e18db1ebd79a93041d9e65db75c90ad7 *powerpc-linux.elf/upx-3.95 -31b7805deee7a10ef416c1cee8c58e03f6e67beec2574a9bdf24d9e627f828a8 *powerpc64le-linux.elf/upx-3.95 +dd35c24ebff5ebb3eed6b489e5ccd84258ebeba1247540b1f32238dd68f6c050 *amd64-linux.elf/upx-3.91 +004d216eb7a895988a98950b9968f655520808485bfbdb35f8de0ba75b19edc5 *amd64-linux.elf/upx-3.95 +ff5f4d665a04bfa1bddabf9853686626aea828a8e542006ef7d76d49b549d9d5 *amd64-win64.pe/upx-3.95.exe +c607bce00a91e4b091b786fcc1c2c8f4b296095469576fdcb1e1bbb84373f4f7 *arm-linux.elf/upx-3.95 +8b236855f4df2df1072a93d3bd1f7203c3d43801830a38679afc354250c6a7be *arm-wince.pe/upx-3.91.exe +930e694397e26a91ad8e0baff05f97562b73723810952dd46fb106ebcd2c1fd1 *arm64-linux.elf/upx-3.95 +6d7f9c3ab61bb51a5d35ec8068dcaf33b7539bd99c7376ca6624f3bbbdd459b4 *armeb-linux.elf/upx-3.91 +309bf6d3cdf7cfddad6dfb50736c37c5bcab8a0f196a8f932b06073eaa10cf00 *armeb-linux.elf/upx-3.95 +14133daa854c4355b25e58803ad9b5e4bfb5e665fdbf12489f8b7c29ef6646a3 *i386-dos32.djgpp2.coff/upx-3.91.exe +1a903afd11b866820a1814c6ee8a68431727e5c570045169295a425a6198a273 *i386-dos32.djgpp2.coff/upx-3.95.exe +26202a8bca71b88adae8c1ea8b545f75852cf4aee073e62c07a5b0c3dcc91578 *i386-linux.elf/upx-3.91 +50ad0bb42fea72ec3f4f4d8912e300f14421203f75dcbaf3c7d9e6243492bf06 *i386-linux.elf/upx-3.95 +58b93bd7d162f89c2ea187590c515192649831ab94435b87b27d47a9e74379e4 *i386-win32.pe/upx-3.91.exe +34c4260a53579a6859668cf3eb6c069cf5db82c00ad605bfdc8b2f1e0450aa16 *i386-win32.pe/upx-3.95.exe +8495d281bf4a8f193a204b5a56d49b3c645370049e8e83db4154db3e02d55543 *m68k-atari.tos/upx-3.91.ttp +3c0f02f85fe6af3fb620d4b1bd196f51fbd06bf1c4f3c692569ffa709454c619 *mips-linux.elf/upx-3.95 +e7900fae9e3a72e409d27cbfe6b78256b8958735cd30cdef33ece365d914b794 *mipsel-linux.elf/upx-3.91 +103add9012fd8c1b8248614cb9a18f34dcc2c2b7f6e1b61834991bc5b93ddbff *mipsel-linux.elf/upx-3.95 +b9981421c66ce1afcc86dd013b0100e9fa274ca76b9b1350192d2ae53208f8ce *powerpc-linux.elf/upx-3.91 +54e3d8165c4e88d5485899cb7587504f922e29e0b4fd18e579c68e679b12d535 *powerpc-linux.elf/upx-3.95 +a7782a247972a017e679a9fde2656b508dd94687d79000f28d75215aa8d86993 *powerpc64le-linux.elf/upx-3.95 " expected_sha256sums__t170_compress_all_methods_no_lzma_5_no_filter="\ -d3099e40aac936657ba5ee8e5113690ac1d06bd2d41e3fb65a93b1b9ae4d25a9 *amd64-linux.elf/upx-3.91 -051469a8cc462ca05c2666dcfd5fc3ebe11aac5c1fc154baa634e28fd9f1c86d *amd64-linux.elf/upx-3.95 -5fef75b0d5934ad148310cb21837cb910572a6c71c9c6ea4c477cfeb42891ce1 *amd64-win64.pe/upx-3.95.exe -d87ba66ac1e222a02806a7429c739437a85a5e816717225c7c38a84ad4a4a63c *arm-linux.elf/upx-3.95 -7f14beec284b7d92726ed753e71a2ad1f47c43e1c05d7a5e70b6fbc649d39e03 *arm-wince.pe/upx-3.91.exe -368343c5d1a0a3eb3a4072bfdb1904a44f79def4782ff7373970f926f3d2a827 *arm64-linux.elf/upx-3.95 -4abcb736f6174025a0ecc0ac70f5539152d292caa2bbd0da9b24f7b50e92035c *armeb-linux.elf/upx-3.91 -3c018ebcd7b6516c61690d8091879de21212ddc989bfae8fb8941b5b3998e559 *armeb-linux.elf/upx-3.95 -d72a3534852d8620a6961faefd2fba3f01f02c3f9c5fdae4f15c5b98ef3ee9e0 *i386-dos32.djgpp2.coff/upx-3.91.exe -4bb473e2ff5ba446d502a44ea6617e3223aa76ffc97bbd6f9ab69d2bcbd730b9 *i386-dos32.djgpp2.coff/upx-3.95.exe -256940a32343f856b2e6a88b58d35439d834c7508f3de0af1b3b9365efa1b77c *i386-linux.elf/upx-3.91 -d7c3b9ae834bd5272234803db5f0063c558ddc976f265c829eae12640c839d05 *i386-linux.elf/upx-3.95 -6c1d386aec8f6166bdbad91611ef4f741fc78ed0e34fc39dd21d3bda5de233e4 *i386-win32.pe/upx-3.91.exe -51e0a496f3b69c40fd0a3265f7992227cf40f5904185490ca02bd1b3d6ce0dbb *i386-win32.pe/upx-3.95.exe -73a1390a01a764ed9647bfdd27beab43f3212bea1622b50ad3e823163f1c07f2 *m68k-atari.tos/upx-3.91.ttp -9d2b8d764a655fc26f4249d392a524fc6f619e78cae37625fd6f2d585a8c2fe2 *mips-linux.elf/upx-3.95 -51a69511bf11db2ab591560b75ded98efcff2977f6e1c71647e7801efd5cb0ee *mipsel-linux.elf/upx-3.91 -7634941d45fca533d46484fa1d6296d1093d35fc4e6438fec19bb626b9cf6418 *mipsel-linux.elf/upx-3.95 -f01e1392439696e745936a3a0f65d79a11e0a9cff93d804f17b0471512cde00a *powerpc-linux.elf/upx-3.91 -e7674b10bded4f6648a8fbbe629fb232a624c9c32d04fd9b2f2fbe53d1802851 *powerpc-linux.elf/upx-3.95 -f54cc443ca810d230c4a79e3fb72d598701d10b7c791cd0e4dc3febd46458e2f *powerpc64le-linux.elf/upx-3.95 +e9eb1b7de237518907c6291ab0fbee303aa35029d278f6370fb643a9921321a9 *amd64-linux.elf/upx-3.91 +4cd585e7c4978ce1d60f4d410f9dac8a5193a10a7abd23d3df9d350da8c238f1 *amd64-linux.elf/upx-3.95 +3247a637f6cc56219bc2d6a3b16237226e1ba97ac1d0fce012657e23bfe256c3 *amd64-win64.pe/upx-3.95.exe +db793effcafd9827cebee132b5bb086b695c06bcf8b87afcc7dbfe6a7854da01 *arm-linux.elf/upx-3.95 +387787098a33b61637b39d7d015972d18e687771d8596b74286764ac73ee9286 *arm-wince.pe/upx-3.91.exe +ad58e5bf132c87f26f8fc6b0cc55ff70582aa9891562670935cab12c69bbb2a9 *arm64-linux.elf/upx-3.95 +d2cf1316249543b49a88130c8167b4243d8b5a0450801587f8c4eb4134dedf55 *armeb-linux.elf/upx-3.91 +be2ef0e5da748b672f067c1e6073de5159c2e312fb8f96fb8528d8dbf82a8249 *armeb-linux.elf/upx-3.95 +ce768b3be6ffeb84d0558a937a9a5778427ce56898a9b3ef9490e7e5ba6ce688 *i386-dos32.djgpp2.coff/upx-3.91.exe +849e285cb39e5609f384559398c47f5e34d2067711c58aacc5ed1c97495b8da0 *i386-dos32.djgpp2.coff/upx-3.95.exe +9da691fb43e45173309a809fc4690321627e3761231675d95470199ca810ca50 *i386-linux.elf/upx-3.91 +4cd481160947713f158d4df03a9c9a3c9a30dee1a8a73a00cb1c0b1410486b5c *i386-linux.elf/upx-3.95 +06d281a60d5ed815f74052e3e133915739e58c3a563a2e914186e85114687a12 *i386-win32.pe/upx-3.91.exe +a1c3256670c4f55d3aea58063c4689d122c605d079537a27b1952eeab8d5d6ad *i386-win32.pe/upx-3.95.exe +b866f184c6fe911b410afa8080acd1c7fddc11131d15bd272eb8adbca20439d2 *m68k-atari.tos/upx-3.91.ttp +27c04b8c012c792b57a70315224c50a69043bfda725f34c62563c25f41d644c8 *mips-linux.elf/upx-3.95 +d1fc4e2700ec3537005392fb95dc11f2f60c4a26a3067749d8aa9b3aa524f0c7 *mipsel-linux.elf/upx-3.91 +19b23ecb193f0f3f11cf4e039214a797c6f963ca75f768954c5326a3e681802d *mipsel-linux.elf/upx-3.95 +5f2a4160628c27f2b30e8e8c8548b78b6c972d95b75feafedd16997ad5747b0c *powerpc-linux.elf/upx-3.91 +b2f2b2c16f32c6f335cbde4222e00cd8b72bb1b05294a2aa09c19c26deaf8343 *powerpc-linux.elf/upx-3.95 +c10e9f77dd41bddfe6756d03ddb0b4e6c4be57118a0b1a107d99886ed5009471 *powerpc64le-linux.elf/upx-3.95 " ########## end .sha256sums.recreate diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 6da5e6d5..d469b71d 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -385,7 +385,7 @@ jobs: - { zig_target: x86_64-windows-gnu } env: # 2023-05-27 - ZIG_DIST_VERSION: 0.11.0-dev.3309+8f5f8090c + ZIG_DIST_VERSION: 0.11.0-dev.3312+ab37ab33c # for zig-cc wrapper scripts (see below): ZIG_CPPFLAGS: -DUPX_DOCTEST_CONFIG_MULTITHREADING ZIG_FLAGS: ${{ matrix.zig_flags }} diff --git a/CMakeLists.txt b/CMakeLists.txt index 0b559b34..30874644 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -33,9 +33,12 @@ if(IS_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/.git" AND NOT MSVC_IDE) message(FATAL_ERROR "ERROR: In-source builds are not allowed, please use an extra build dir.") endif() endif() + +# global settings set(CMAKE_C_STANDARD_REQUIRED ON) set(CMAKE_CXX_STANDARD_REQUIRED ON) set(CMAKE_EXPORT_COMPILE_COMMANDS ON) +set(CMAKE_MSVC_RUNTIME_LIBRARY "MultiThreaded") # determine Git revision set(GITREV_SHORT "") diff --git a/NEWS b/NEWS index 22d3947a..33843b6f 100644 --- a/NEWS +++ b/NEWS @@ -2,7 +2,8 @@ User visible changes for UPX ================================================================== -Changes in 4.0.3 (XX XXX 2023): +Changes in 4.1.0 (XX XXX 2023): + * ELF: handle shared libraries with more than 2 PT_LOAD segments * bug fixes - see https://github.com/upx/upx/milestone/11 Changes in 4.0.2 (30 Jan 2023): diff --git a/src/check/dt_check.cpp b/src/check/dt_check.cpp index f0cf165f..086369b5 100644 --- a/src/check/dt_check.cpp +++ b/src/check/dt_check.cpp @@ -170,19 +170,35 @@ struct CheckIntegral { U a = {}; const U b = {}; static constexpr U c = {}; + U x[2] = {}; + const U y[2] = {}; + static constexpr U z[2] = {}; }; template static void checkU(void) { - U a = {}; - const U b = {}; - constexpr U c = {}; - assert(a == 0); - assert(b == 0); - assert(c == 0); - TestU t; - assert(t.a == 0); - assert(t.b == 0); - assert(t.c == 0); + { + U a = {}; + const U b = {}; + constexpr U c = {}; + U x[2] = {}; + const U y[2] = {}; + constexpr U z[2] = {}; + assert(a == 0); + assert(b == 0); + assert(c == 0); + assert(x[0] == 0 && x[1] == 0); + assert(y[0] == 0 && y[1] == 0); + assert(z[0] == 0 && z[1] == 0); + } + { + TestU t; + assert(t.a == 0); + assert(t.b == 0); + assert(t.c == 0); + assert(t.x[0] == 0 && t.x[1] == 0); + assert(t.y[0] == 0 && t.y[1] == 0); + assert(t.z[0] == 0 && t.z[1] == 0); + } #if __cplusplus < 202002L COMPILE_TIME_ASSERT(std::is_pod::value) // std::is_pod is deprecated in C++20 #endif @@ -230,9 +246,6 @@ struct TestBELE { static noinline bool test(void) { CheckIntegral::check(); CheckAlignment::check(); - // array init - T array[2] = {}; - assert(array[0] == 0 && array[1] == 0); // arithmetic checks (modern compilers will optimize this away) T allbits = {}; assert(allbits == 0); diff --git a/src/compress/compress_lzma.cpp b/src/compress/compress_lzma.cpp index 0ec44d90..c4f9c869 100644 --- a/src/compress/compress_lzma.cpp +++ b/src/compress/compress_lzma.cpp @@ -206,14 +206,21 @@ error: // compress - cruft because of pseudo-COM layer **************************************************************************/ +// ensure proper nullptr usage +#include +#undef NULL +#define NULL nullptr +#if defined(__GNUC__) +#undef __null +#define __null nullptr +#endif + #undef MSDOS #undef OS2 #undef _WIN32 #undef _WIN32_WCE #undef COMPRESS_MF_MT #undef _NO_EXCEPTIONS -#undef NULL -#define NULL nullptr #include // #include #include diff --git a/src/p_com.h b/src/p_com.h index 2d394b79..042800e0 100644 --- a/src/p_com.h +++ b/src/p_com.h @@ -26,8 +26,6 @@ */ #pragma once -#ifndef UPX_P_COM_H__ -#define UPX_P_COM_H__ 1 /************************************************************************* // dos/com @@ -60,6 +58,4 @@ protected: virtual void patchLoader(OutputFile *fo, byte *, int, unsigned); }; -#endif /* already included */ - /* vim:set ts=4 sw=4 et: */ diff --git a/src/p_exe.h b/src/p_exe.h index 90312ce1..43c4e8bf 100644 --- a/src/p_exe.h +++ b/src/p_exe.h @@ -26,8 +26,6 @@ */ #pragma once -#ifndef UPX_P_EXE_H__ -#define UPX_P_EXE_H__ 1 /************************************************************************* // dos/exe @@ -104,6 +102,4 @@ protected: bool use_clear_dirty_stack = false; }; -#endif /* already included */ - /* vim:set ts=4 sw=4 et: */ diff --git a/src/p_ps1.h b/src/p_ps1.h index 029ffcb0..ef3adedd 100644 --- a/src/p_ps1.h +++ b/src/p_ps1.h @@ -30,8 +30,6 @@ */ #pragma once -#ifndef UPX_P_PS1_H__ -#define UPX_P_PS1_H__ 1 /************************************************************************* // ps1/exe @@ -126,6 +124,4 @@ protected: unsigned fdata_size; }; -#endif /* already included */ - /* vim:set ts=4 sw=4 et: */ diff --git a/src/p_sys.h b/src/p_sys.h index 6bbc486f..2d9b354e 100644 --- a/src/p_sys.h +++ b/src/p_sys.h @@ -26,8 +26,6 @@ */ #pragma once -#ifndef UPX_P_SYS_H__ -#define UPX_P_SYS_H__ 1 /************************************************************************* // dos/sys @@ -51,6 +49,4 @@ protected: // dos/com overrides virtual void patchLoader(OutputFile *fo, byte *, int, unsigned) override; }; -#endif /* already included */ - /* vim:set ts=4 sw=4 et: */ diff --git a/src/p_tmt.h b/src/p_tmt.h index 60598f71..69bd45ec 100644 --- a/src/p_tmt.h +++ b/src/p_tmt.h @@ -26,8 +26,6 @@ */ #pragma once -#ifndef UPX_P_TMT_H__ -#define UPX_P_TMT_H__ 1 /************************************************************************* // tmt/adam @@ -75,6 +73,4 @@ protected: tmt_header_t ih, oh; }; -#endif /* already included */ - /* vim:set ts=4 sw=4 et: */ diff --git a/src/p_tos.cpp b/src/p_tos.cpp index ca38a295..eaeb30e7 100644 --- a/src/p_tos.cpp +++ b/src/p_tos.cpp @@ -1,4 +1,4 @@ -/* p_tos.cpp -- +/* p_tos.cpp -- atari/tos executable format This file is part of the UPX executable compressor. diff --git a/src/p_tos.h b/src/p_tos.h index 68f7310d..23990703 100644 --- a/src/p_tos.h +++ b/src/p_tos.h @@ -1,4 +1,4 @@ -/* p_tos.h -- +/* p_tos.h -- atari/tos executable format This file is part of the UPX executable compressor. @@ -26,8 +26,6 @@ */ #pragma once -#ifndef UPX_P_TOS_H__ -#define UPX_P_TOS_H__ 1 /************************************************************************* // atari/tos @@ -106,6 +104,4 @@ protected: LinkerSymbols symbols; }; -#endif /* already included */ - /* vim:set ts=4 sw=4 et: */ diff --git a/src/p_w32pe_i386.h b/src/p_w32pe_i386.h index 45f659de..751ebf71 100644 --- a/src/p_w32pe_i386.h +++ b/src/p_w32pe_i386.h @@ -28,7 +28,7 @@ #pragma once /************************************************************************* -// +// win32/pe (i386) **************************************************************************/ class PackW32PeI386 final : public PeFile32 { diff --git a/src/p_w64pe_amd64.h b/src/p_w64pe_amd64.h index de74afa7..4ba93276 100644 --- a/src/p_w64pe_amd64.h +++ b/src/p_w64pe_amd64.h @@ -28,7 +28,7 @@ #pragma once /************************************************************************* -// +// win64/pe (amd64) **************************************************************************/ class PackW64PeAmd64 final : public PeFile64 { diff --git a/src/p_w64pe_arm64.h b/src/p_w64pe_arm64.h index c0610859..9dfb4509 100644 --- a/src/p_w64pe_arm64.h +++ b/src/p_w64pe_arm64.h @@ -28,7 +28,7 @@ #pragma once /************************************************************************* -// +// win64/arm64 **************************************************************************/ class PackW64PeArm64 : public PeFile64 { @@ -58,6 +58,8 @@ protected: }; /************************************************************************* +// win64/arm64ec +// // TODO: it is unclear yet if this should be made a subclass // or just get merged into the base class using a flag; // maybe the difference between arm64 and arm64ec does not really affect us diff --git a/src/p_wince_arm.h b/src/p_wince_arm.h index eb68f6c2..b484177f 100644 --- a/src/p_wince_arm.h +++ b/src/p_wince_arm.h @@ -28,7 +28,7 @@ #pragma once /************************************************************************* -// +// wince/arm (Windows CE) **************************************************************************/ class PackWinCeArm final : public PeFile32 { diff --git a/src/util/util.cpp b/src/util/util.cpp index 7c19324f..5e4e530b 100644 --- a/src/util/util.cpp +++ b/src/util/util.cpp @@ -322,7 +322,7 @@ struct TestSortAllPermutations { memcpy(a, perm, sizeof(*a) * n); upx_stable_sort(a, n, sizeof(*a), le16_compare); for (size_t i = 0; i < n; i++) - CHECK((a[i] == 255 + i)); + assert((a[i] == 255 + i)); num_perms += 1; } while (std::next_permutation(perm, perm + n)); return num_perms; diff --git a/src/version.h b/src/version.h index 896b58ea..597b6a8a 100644 --- a/src/version.h +++ b/src/version.h @@ -1,8 +1,6 @@ -#define UPX_VERSION_HEX 0x040003 /* 04.00.03 */ -#define UPX_VERSION_STRING "4.0.3" -#define UPX_VERSION_STRING4 "4.03" -#define UPX_VERSION_DATE "May 19th 2023" -#define UPX_VERSION_DATE_ISO "2023-05-19" +#define UPX_VERSION_HEX 0x040100 /* 04.01.00 */ +#define UPX_VERSION_STRING "4.1.0" +#define UPX_VERSION_STRING4 "4.10" +#define UPX_VERSION_DATE "May 28th 2023" +#define UPX_VERSION_DATE_ISO "2023-05-28" #define UPX_VERSION_YEAR "2023" - -/* vim:set ts=4 sw=4 et: */