aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJ0WI <J0WI@users.noreply.github.com>2020-01-09 02:15:45 +0100
committerSören Tempel <soeren+git@soeren-tempel.net>2020-01-11 09:51:47 +0100
commited2c5b48f57ac3a3a379f6a0db7ef891fcdbaeeb (patch)
tree232ed04b60ba74a848ab9b877e1a6cc985f32c45
parent831ff0a8b884b349a8db61415396116f4ceec366 (diff)
downloadalpine_aports-ed2c5b48f57ac3a3a379f6a0db7ef891fcdbaeeb.tar.bz2
alpine_aports-ed2c5b48f57ac3a3a379f6a0db7ef891fcdbaeeb.tar.xz
alpine_aports-ed2c5b48f57ac3a3a379f6a0db7ef891fcdbaeeb.zip
community/firefox-esr: security upgrade to 68.4.1
Fixes #11118
-rw-r--r--community/firefox-esr/APKBUILD11
-rw-r--r--community/firefox-esr/fix-build-with-rust-1.39.patch172
2 files changed, 7 insertions, 176 deletions
diff --git a/community/firefox-esr/APKBUILD b/community/firefox-esr/APKBUILD
index bda09b534c..76aba437a9 100644
--- a/community/firefox-esr/APKBUILD
+++ b/community/firefox-esr/APKBUILD
@@ -1,7 +1,7 @@
1# Contributor: Sören Tempel <soeren+alpine@soeren-tempel.net> 1# Contributor: Sören Tempel <soeren+alpine@soeren-tempel.net>
2# Maintainer: Natanael Copa <ncopa@alpinelinux.org> 2# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
3pkgname=firefox-esr 3pkgname=firefox-esr
4pkgver=68.3.0 4pkgver=68.4.1
5pkgrel=0 5pkgrel=0
6pkgdesc="Firefox web browser - Extended Support Release" 6pkgdesc="Firefox web browser - Extended Support Release"
7url="https://www.mozilla.org/en-US/firefox/organizations/" 7url="https://www.mozilla.org/en-US/firefox/organizations/"
@@ -64,7 +64,6 @@ source="https://ftp.mozilla.org/pub/firefox/releases/${pkgver}esr/source/firefox
64 fix-rust-target.patch 64 fix-rust-target.patch
65 fix-webrtc-glibcisms.patch 65 fix-webrtc-glibcisms.patch
66 fix-sandbox-membarrier.patch 66 fix-sandbox-membarrier.patch
67 fix-build-with-rust-1.39.patch
68 67
69 firefox.desktop 68 firefox.desktop
70 firefox-safe.desktop" 69 firefox-safe.desktop"
@@ -76,6 +75,11 @@ _mozappdir=/usr/lib/firefox
76ldpath="$_mozappdir" 75ldpath="$_mozappdir"
77 76
78# secfixes: 77# secfixes:
78# 68.4.1-r0:
79# - CVE-2019-17016
80# - CVE-2019-17022
81# - CVE-2019-17024
82# - CVE-2019-17026
79# 68.3.0-r0: 83# 68.3.0-r0:
80# - CVE-2019-17005 84# - CVE-2019-17005
81# - CVE-2019-17008 85# - CVE-2019-17008
@@ -291,7 +295,7 @@ __EOF__
291 rm -f "$pkgdir"/${_mozappdirdev}/sdk/lib/libxul.so 295 rm -f "$pkgdir"/${_mozappdirdev}/sdk/lib/libxul.so
292} 296}
293 297
294sha512sums="f99a4a18aa1b4472152fc6de68ef56ee071c1adfc70a907c10943f8436758c9adc0fe05a90b894ea521cc0c30782e6e2c29f04747d7edf3e55080fa0c4ebf8c3 firefox-68.3.0esr.source.tar.xz 298sha512sums="8dd85096f1223b2ab396cc3b89a9f1b113f01ce8919af08a278d077cc4380c108a66b6379c75d85311aa3c54a7804f4d51f718b309fe107ff7c44aca7e4386ed firefox-68.4.1esr.source.tar.xz
2950b3f1e4b9fdc868e4738b5c81fd6c6128ce8885b260affcb9a65ff9d164d7232626ce1291aaea70132b3e3124f5e13fef4d39326b8e7173e362a823722a85127 stab.h 2990b3f1e4b9fdc868e4738b5c81fd6c6128ce8885b260affcb9a65ff9d164d7232626ce1291aaea70132b3e3124f5e13fef4d39326b8e7173e362a823722a85127 stab.h
2962f4f15974d52de4bb273b62a332d13620945d284bbc6fe6bd0a1f58ff7388443bc1d3bf9c82cc31a8527aad92b0cd3a1bc41d0af5e1800e0dcbd7033e58ffd71 fix-fortify-system-wrappers.patch 3002f4f15974d52de4bb273b62a332d13620945d284bbc6fe6bd0a1f58ff7388443bc1d3bf9c82cc31a8527aad92b0cd3a1bc41d0af5e1800e0dcbd7033e58ffd71 fix-fortify-system-wrappers.patch
29784b84d2d7dbc16002510bf856796ad345ac38ef6d3254670230189bba7c2d4781714d231236d5a3d70129a4597b430c3171644b01ad0f5a5bb13b55d407337a4 fix-seccomp-bpf.patch 30184b84d2d7dbc16002510bf856796ad345ac38ef6d3254670230189bba7c2d4781714d231236d5a3d70129a4597b430c3171644b01ad0f5a5bb13b55d407337a4 fix-seccomp-bpf.patch
@@ -303,6 +307,5 @@ e0df4fc649012f023443ce9165da29d36459dbca5df64a31008b28d96264fba909858de36d0cf1b1
3037903987b4b661286de03c6940bf67aaed6d78c9adc57680413407a84a1f1f26aaded35e6d53ea6ad527b474968b343d844e81e16d777c0e29b830b51aa2ca8c3 fix-rust-target.patch 3077903987b4b661286de03c6940bf67aaed6d78c9adc57680413407a84a1f1f26aaded35e6d53ea6ad527b474968b343d844e81e16d777c0e29b830b51aa2ca8c3 fix-rust-target.patch
304d35cacb9ede80e6bfbef0709823e536dddfb1c02d776275b0b7adb5969e9927d8c6117df96873569c3f3db0a18ee5db24f8086a9311a05077892be43a3dd8d79 fix-webrtc-glibcisms.patch 308d35cacb9ede80e6bfbef0709823e536dddfb1c02d776275b0b7adb5969e9927d8c6117df96873569c3f3db0a18ee5db24f8086a9311a05077892be43a3dd8d79 fix-webrtc-glibcisms.patch
305f85f2c19c3dafab915bcb40e580fc442fd9eab5916696849edf0b105c758dd807dfe23a6479935613c81496711eb377c73227c03eb8582204c3442a4d0e397a2 fix-sandbox-membarrier.patch 309f85f2c19c3dafab915bcb40e580fc442fd9eab5916696849edf0b105c758dd807dfe23a6479935613c81496711eb377c73227c03eb8582204c3442a4d0e397a2 fix-sandbox-membarrier.patch
30649a48a2e3590dc8231d82cf4aacb22d20469731198af2afa0453cd0b3069b47a292296043ad3ee3d4a782d74de244c99b7b0a953a5a84b3e8092094451063eb0 fix-build-with-rust-1.39.patch
307f3b7c3e804ce04731012a46cb9e9a6b0769e3772aef9c0a4a8c7520b030fdf6cd703d5e9ff49275f14b7d738fe82a0a4fde3bc3219dff7225d5db0e274987454 firefox.desktop 310f3b7c3e804ce04731012a46cb9e9a6b0769e3772aef9c0a4a8c7520b030fdf6cd703d5e9ff49275f14b7d738fe82a0a4fde3bc3219dff7225d5db0e274987454 firefox.desktop
3085dcb6288d0444a8a471d669bbaf61cdb1433663eff38b72ee5e980843f5fc07d0d60c91627a2c1159215d0ad77ae3f115dcc5fdfe87e64ca704b641aceaa44ed firefox-safe.desktop" 3115dcb6288d0444a8a471d669bbaf61cdb1433663eff38b72ee5e980843f5fc07d0d60c91627a2c1159215d0ad77ae3f115dcc5fdfe87e64ca704b641aceaa44ed firefox-safe.desktop"
diff --git a/community/firefox-esr/fix-build-with-rust-1.39.patch b/community/firefox-esr/fix-build-with-rust-1.39.patch
deleted file mode 100644
index d35b8cfa13..0000000000
--- a/community/firefox-esr/fix-build-with-rust-1.39.patch
+++ /dev/null
@@ -1,172 +0,0 @@
1Copied from Gentoo (firefox-68.2.0-rust-1.39+.patch)
2
3Based on https://github.com/rust-lang/rust/issues/64710
4
5--- a/third_party/rust/bindgen/.cargo-checksum.json
6+++ b/third_party/rust/bindgen/.cargo-checksum.json
7@@ -1 +1 @@
8-{"files":{"Cargo.toml":"9af635e7bad9021a49742a312faf6178b757dbd48aabc998931d6f491f14c179","LICENSE":"c23953d9deb0a3312dbeaf6c128a657f3591acee45067612fa68405eaa4525db","README.md":"5a1f556c6a57c0a6ccc65e19c27718e0f4b32381a8efcc80f6601b33c58c5d59","build.rs":"a9f6915c54d75f357ce32f96327bf4df53dc81a505b70831978f9dac6f43841d","src/callbacks.rs":"b24d7982332c6a35928f134184ddf4072fe4545a45546b97b9b0e0c1fbb77c08","src/clang.rs":"e9203eb5a1b432efebafcd011896e35e8c9145037bf99e7bb3709dc1b8e8e783","src/codegen/bitfield_unit.rs":"88b0604322dc449fc9284850eadc1f5d14b42fa747d4258bae0b6b9535f52dfd","src/codegen/bitfield_unit_tests.rs":"2073ac6a36e0bc9afaef5b1207966817c8fb7a1a9f6368c3b1b8f79822efbfba","src/codegen/error.rs":"2613af1d833377fd4a70719f4a09951d9d45dc9227827b9a2a938a1bcaaea2dd","src/codegen/helpers.rs":"fbd23e68dd51ccaddeb9761394d5df2db49baded0e2dccf6bbc52a2d6de502eb","src/codegen/impl_debug.rs":"f82969461d522fb758eca552ceaf189122a404cbb47fcc16008bfe52fc62aefa","src/codegen/impl_partialeq.rs":"d40d9ee2849c4d3d557b033c4d3af5e6de4a44347f67c0f016198086338811af","src/codegen/mod.rs":"238d989e13b7556e5d120a2bfe85b43332fba56cbe8df886d4c32e650fff1247","src/codegen/struct_layout.rs":"3fa5524aff82365ce292b0cc85080514c85a6dbd31bce90f001773b995dda28e","src/extra_assertions.rs":"494534bd4f18b80d89b180c8a93733e6617edcf7deac413e9a73fd6e7bc9ced7","src/features.rs":"c5fd7149f4a3b41fd4f89ade08505170942f4bc791bcb6a34fdddd3ae61856f8","src/ir/analysis/derive.rs":"325d4c1c1e6194e743f42a2316f1501b0ef852fe309f2e9cac3434825ad235f0","src/ir/analysis/has_destructor.rs":"63644f479738df35e531d3324ff892614083c3656e0747aa34d9f20dada878ec","src/ir/analysis/has_float.rs":"76162a309e4285a806755a08c687a3e7bc894a100a63da4e88584035e215b11d","src/ir/analysis/has_type_param_in_array.rs":"fdbc0af28a144c88ea2de83e6e6da5e1ffb40e3dd63fd7a708095d085bb06f94","src/ir/analysis/has_vtable.rs":"5788372d27bdbaaf0454bc17be31a5480918bc41a8a1c4832e8c61185c07f9cd","src/ir/analysis/mod.rs":"1f218e15c19f6666512908abc853fa7ff9ca5d0fafd94f026d9e4b0ce287ec3c","src/ir/analysis/sizedness.rs":"8dc10043d872e68e660ef96edca4d9733f95be45cdad4893462fa929b335014f","src/ir/analysis/template_params.rs":"6312c008bbc80f50e72a766756c8daddea0b6eeb31ec924b83a231df931e170e","src/ir/annotations.rs":"39a5ab19f4d5dfa617577e4a0d0d2b67b5369d480c7cca4b14d172458c9843f0","src/ir/comment.rs":"c48abe01c5af0f09f583a89f1394bc6c161b40f6c8f0f600bbfe3c907b47969b","src/ir/comp.rs":"ca439407faefbe3a198246f0a1dbdf4e40307e45eaaad317e85d1aab37bb31fc","src/ir/context.rs":"599226eb04d337a1b1b13af91af91bdb02dbd5f26f274cbc0ebc4489eb144fc0","src/ir/derive.rs":"34f9aa76b6c9c05136bb69dcd6455397faef571a567254d2c541d50a962994db","src/ir/dot.rs":"95ed2968fc3239d87892e9f1edf1ed6dd18630d949564961765967ea1d16960c","src/ir/enum_ty.rs":"9cc242d6b3c1866665594e8b306860ee39c0ea42d22198d46b7fded473fe3e84","src/ir/function.rs":"2d41d9df19f42b0c383f338be4c026c005853a8d1caf5f3e5a2f3a8dad202232","src/ir/int.rs":"07e0c7dbd2dd977177fae3acd2a14adf271c6cf9ff4b57cddc11d50734fd4801","src/ir/item.rs":"3bcdb69b793350e5744aec3577cdbb1e5068ece5220c38763cecd82dfb5e8f03","src/ir/item_kind.rs":"dbeae8c4fd0e5c9485d325aea040e056a1f2cd6d43fc927dee8fe1c0c59a7197","src/ir/layout.rs":"d49582081f5f86f7595afbe4845f38fb3b969a840b568f4a49b265e7d790bb5b","src/ir/mod.rs":"2eae90f207fad2e45957ec9287064992a419e3fc916aba84faff2ea25cbeb5ee","src/ir/module.rs":"c4d90bf38fe3672e01923734ccbdb7951ea929949d5f413a9c2aee12395a5094","src/ir/objc.rs":"758aa955a0c5d6ad82606c88a1f4cd1d93e666b71e82d43b18b1aaae96cf888a","src/ir/template.rs":"c0f8570b927dfd6a421fc4ce3094ec837a3ed936445225dbfac961e8e0842ae5","src/ir/traversal.rs":"ea751379a5aec02f93f8d2c61e18232776b1f000dbeae64b9a7195ba21a19dd6","src/ir/ty.rs":"952fb04cd6a71a2bca5c509aecacb42a1de0cae75824941541a38dc589f0993a","src/ir/var.rs":"8bdafb6d02f2c55ae11c28d88b19fb7a65ba8466da12ff039ae4c16c790b291e","src/lib.rs":"d5c8b404c515d30fc2d78b28eb84cff6b256f1f1e2dbd6aca280529bb2af6879","src/log_stubs.rs":"6dfdd908b7c6453da416cf232893768f9480e551ca4add0858ef88bf71ee6ceb","src/main.rs":"e519053bcdde6bc88f60f955246a02d53b3db1cc5ccd1612e6675b790b7460b0","src/options.rs":"041d635c8f6712ca32676a68f06d0245faed5577d9513786e058540ea2a69a7f","src/parse.rs":"be7d13cc84fae79ec7b3aa9e77063fa475a48d74a854423e2c72d75006a25202","src/regex_set.rs":"5cb72fc3714c0d79e9e942d003349c0775fafd7cd0c9603c65f5261883bbf9cf","src/time.rs":"3b763e6fee51d0eb01228dfe28bc28a9f692aff73b2a7b90a030902e0238fca6"},"package":"6bd7710ac8399ae1ebe1e3aac7c9047c4f39f2c94b33c997f482f49e96991f7c"}
9\ No newline at end of file
10+{"files":{"Cargo.toml":"9af635e7bad9021a49742a312faf6178b757dbd48aabc998931d6f491f14c179","LICENSE":"c23953d9deb0a3312dbeaf6c128a657f3591acee45067612fa68405eaa4525db","README.md":"5a1f556c6a57c0a6ccc65e19c27718e0f4b32381a8efcc80f6601b33c58c5d59","build.rs":"a9f6915c54d75f357ce32f96327bf4df53dc81a505b70831978f9dac6f43841d","src/callbacks.rs":"b24d7982332c6a35928f134184ddf4072fe4545a45546b97b9b0e0c1fbb77c08","src/clang.rs":"e9203eb5a1b432efebafcd011896e35e8c9145037bf99e7bb3709dc1b8e8e783","src/codegen/bitfield_unit.rs":"88b0604322dc449fc9284850eadc1f5d14b42fa747d4258bae0b6b9535f52dfd","src/codegen/bitfield_unit_tests.rs":"2073ac6a36e0bc9afaef5b1207966817c8fb7a1a9f6368c3b1b8f79822efbfba","src/codegen/error.rs":"2613af1d833377fd4a70719f4a09951d9d45dc9227827b9a2a938a1bcaaea2dd","src/codegen/helpers.rs":"fbd23e68dd51ccaddeb9761394d5df2db49baded0e2dccf6bbc52a2d6de502eb","src/codegen/impl_debug.rs":"f82969461d522fb758eca552ceaf189122a404cbb47fcc16008bfe52fc62aefa","src/codegen/impl_partialeq.rs":"d40d9ee2849c4d3d557b033c4d3af5e6de4a44347f67c0f016198086338811af","src/codegen/mod.rs":"238d989e13b7556e5d120a2bfe85b43332fba56cbe8df886d4c32e650fff1247","src/codegen/struct_layout.rs":"3fa5524aff82365ce292b0cc85080514c85a6dbd31bce90f001773b995dda28e","src/extra_assertions.rs":"494534bd4f18b80d89b180c8a93733e6617edcf7deac413e9a73fd6e7bc9ced7","src/features.rs":"c5fd7149f4a3b41fd4f89ade08505170942f4bc791bcb6a34fdddd3ae61856f8","src/ir/analysis/derive.rs":"325d4c1c1e6194e743f42a2316f1501b0ef852fe309f2e9cac3434825ad235f0","src/ir/analysis/has_destructor.rs":"63644f479738df35e531d3324ff892614083c3656e0747aa34d9f20dada878ec","src/ir/analysis/has_float.rs":"76162a309e4285a806755a08c687a3e7bc894a100a63da4e88584035e215b11d","src/ir/analysis/has_type_param_in_array.rs":"fdbc0af28a144c88ea2de83e6e6da5e1ffb40e3dd63fd7a708095d085bb06f94","src/ir/analysis/has_vtable.rs":"8c92a52c0f859c7bec7bfbc36b9d18f904baab0c8c9dc1b3e7af34de1a0b0da4","src/ir/analysis/mod.rs":"1f218e15c19f6666512908abc853fa7ff9ca5d0fafd94f026d9e4b0ce287ec3c","src/ir/analysis/sizedness.rs":"71f1a37f75b971ea5b0d8457473cc410947dbf706cb6d2c0338916910b78a675","src/ir/analysis/template_params.rs":"6312c008bbc80f50e72a766756c8daddea0b6eeb31ec924b83a231df931e170e","src/ir/annotations.rs":"39a5ab19f4d5dfa617577e4a0d0d2b67b5369d480c7cca4b14d172458c9843f0","src/ir/comment.rs":"c48abe01c5af0f09f583a89f1394bc6c161b40f6c8f0f600bbfe3c907b47969b","src/ir/comp.rs":"ca439407faefbe3a198246f0a1dbdf4e40307e45eaaad317e85d1aab37bb31fc","src/ir/context.rs":"599226eb04d337a1b1b13af91af91bdb02dbd5f26f274cbc0ebc4489eb144fc0","src/ir/derive.rs":"e5581852eec87918901a129284b4965aefc8a19394187a8095779a084f28fabe","src/ir/dot.rs":"95ed2968fc3239d87892e9f1edf1ed6dd18630d949564961765967ea1d16960c","src/ir/enum_ty.rs":"9cc242d6b3c1866665594e8b306860ee39c0ea42d22198d46b7fded473fe3e84","src/ir/function.rs":"2d41d9df19f42b0c383f338be4c026c005853a8d1caf5f3e5a2f3a8dad202232","src/ir/int.rs":"07e0c7dbd2dd977177fae3acd2a14adf271c6cf9ff4b57cddc11d50734fd4801","src/ir/item.rs":"3bcdb69b793350e5744aec3577cdbb1e5068ece5220c38763cecd82dfb5e8f03","src/ir/item_kind.rs":"dbeae8c4fd0e5c9485d325aea040e056a1f2cd6d43fc927dee8fe1c0c59a7197","src/ir/layout.rs":"d49582081f5f86f7595afbe4845f38fb3b969a840b568f4a49b265e7d790bb5b","src/ir/mod.rs":"2eae90f207fad2e45957ec9287064992a419e3fc916aba84faff2ea25cbeb5ee","src/ir/module.rs":"c4d90bf38fe3672e01923734ccbdb7951ea929949d5f413a9c2aee12395a5094","src/ir/objc.rs":"758aa955a0c5d6ad82606c88a1f4cd1d93e666b71e82d43b18b1aaae96cf888a","src/ir/template.rs":"c0f8570b927dfd6a421fc4ce3094ec837a3ed936445225dbfac961e8e0842ae5","src/ir/traversal.rs":"ea751379a5aec02f93f8d2c61e18232776b1f000dbeae64b9a7195ba21a19dd6","src/ir/ty.rs":"952fb04cd6a71a2bca5c509aecacb42a1de0cae75824941541a38dc589f0993a","src/ir/var.rs":"8bdafb6d02f2c55ae11c28d88b19fb7a65ba8466da12ff039ae4c16c790b291e","src/lib.rs":"d5c8b404c515d30fc2d78b28eb84cff6b256f1f1e2dbd6aca280529bb2af6879","src/log_stubs.rs":"6dfdd908b7c6453da416cf232893768f9480e551ca4add0858ef88bf71ee6ceb","src/main.rs":"e519053bcdde6bc88f60f955246a02d53b3db1cc5ccd1612e6675b790b7460b0","src/options.rs":"041d635c8f6712ca32676a68f06d0245faed5577d9513786e058540ea2a69a7f","src/parse.rs":"be7d13cc84fae79ec7b3aa9e77063fa475a48d74a854423e2c72d75006a25202","src/regex_set.rs":"5cb72fc3714c0d79e9e942d003349c0775fafd7cd0c9603c65f5261883bbf9cf","src/time.rs":"3b763e6fee51d0eb01228dfe28bc28a9f692aff73b2a7b90a030902e0238fca6"},"package":"6bd7710ac8399ae1ebe1e3aac7c9047c4f39f2c94b33c997f482f49e96991f7c"}
11\ No newline at end of file
12--- a/third_party/rust/bindgen/src/ir/analysis/has_vtable.rs
13+++ b/third_party/rust/bindgen/src/ir/analysis/has_vtable.rs
14@@ -9,17 +9,17 @@ use std::ops;
15 use {HashMap, Entry};
16
17 /// The result of the `HasVtableAnalysis` for an individual item.
18-#[derive(Copy, Clone, Debug, PartialEq, Eq, Ord)]
19+#[derive(Copy, Clone, Debug, PartialEq, Eq, PartialOrd, Ord)]
20 pub enum HasVtableResult {
21- /// The item has a vtable, but the actual vtable pointer is in a base
22- /// member.
23- BaseHasVtable,
24+ /// The item does not have a vtable pointer.
25+ No,
26
27 /// The item has a vtable and the actual vtable pointer is within this item.
28 SelfHasVtable,
29
30- /// The item does not have a vtable pointer.
31- No
32+ /// The item has a vtable, but the actual vtable pointer is in a base
33+ /// member.
34+ BaseHasVtable,
35 }
36
37 impl Default for HasVtableResult {
38@@ -28,21 +28,6 @@ impl Default for HasVtableResult {
39 }
40 }
41
42-impl cmp::PartialOrd for HasVtableResult {
43- fn partial_cmp(&self, rhs: &Self) -> Option<cmp::Ordering> {
44- use self::HasVtableResult::*;
45-
46- match (*self, *rhs) {
47- (x, y) if x == y => Some(cmp::Ordering::Equal),
48- (BaseHasVtable, _) => Some(cmp::Ordering::Greater),
49- (_, BaseHasVtable) => Some(cmp::Ordering::Less),
50- (SelfHasVtable, _) => Some(cmp::Ordering::Greater),
51- (_, SelfHasVtable) => Some(cmp::Ordering::Less),
52- _ => unreachable!(),
53- }
54- }
55-}
56-
57 impl HasVtableResult {
58 /// Take the least upper bound of `self` and `rhs`.
59 pub fn join(self, rhs: Self) -> Self {
60--- a/third_party/rust/bindgen/src/ir/analysis/sizedness.rs
61+++ b/third_party/rust/bindgen/src/ir/analysis/sizedness.rs
62@@ -22,13 +22,14 @@ use {HashMap, Entry};
63 ///
64 /// We initially assume that all types are `ZeroSized` and then update our
65 /// understanding as we learn more about each type.
66-#[derive(Copy, Clone, Debug, PartialEq, Eq, Ord)]
67+#[derive(Copy, Clone, Debug, PartialEq, Eq, PartialOrd, Ord)]
68 pub enum SizednessResult {
69- /// Has some size that is known to be greater than zero. That doesn't mean
70- /// it has a static size, but it is not zero sized for sure. In other words,
71- /// it might contain an incomplete array or some other dynamically sized
72- /// type.
73- NonZeroSized,
74+ /// The type is zero-sized.
75+ ///
76+ /// This means that if it is a C++ type, and is not being used as a base
77+ /// member, then we must add an `_address` byte to enforce the
78+ /// unique-address-per-distinct-object-instance rule.
79+ ZeroSized,
80
81 /// Whether this type is zero-sized or not depends on whether a type
82 /// parameter is zero-sized or not.
83@@ -52,12 +53,11 @@ pub enum SizednessResult {
84 /// https://github.com/rust-lang-nursery/rust-bindgen/issues/586
85 DependsOnTypeParam,
86
87- /// The type is zero-sized.
88- ///
89- /// This means that if it is a C++ type, and is not being used as a base
90- /// member, then we must add an `_address` byte to enforce the
91- /// unique-address-per-distinct-object-instance rule.
92- ZeroSized,
93+ /// Has some size that is known to be greater than zero. That doesn't mean
94+ /// it has a static size, but it is not zero sized for sure. In other words,
95+ /// it might contain an incomplete array or some other dynamically sized
96+ /// type.
97+ NonZeroSized,
98 }
99
100 impl Default for SizednessResult {
101@@ -66,21 +66,6 @@ impl Default for SizednessResult {
102 }
103 }
104
105-impl cmp::PartialOrd for SizednessResult {
106- fn partial_cmp(&self, rhs: &Self) -> Option<cmp::Ordering> {
107- use self::SizednessResult::*;
108-
109- match (*self, *rhs) {
110- (x, y) if x == y => Some(cmp::Ordering::Equal),
111- (NonZeroSized, _) => Some(cmp::Ordering::Greater),
112- (_, NonZeroSized) => Some(cmp::Ordering::Less),
113- (DependsOnTypeParam, _) => Some(cmp::Ordering::Greater),
114- (_, DependsOnTypeParam) => Some(cmp::Ordering::Less),
115- _ => unreachable!(),
116- }
117- }
118-}
119-
120 impl SizednessResult {
121 /// Take the least upper bound of `self` and `rhs`.
122 pub fn join(self, rhs: Self) -> Self {
123--- a/third_party/rust/bindgen/src/ir/derive.rs
124+++ b/third_party/rust/bindgen/src/ir/derive.rs
125@@ -92,10 +92,10 @@ pub trait CanDeriveOrd {
126 ///
127 /// Initially we assume that we can derive trait for all types and then
128 /// update our understanding as we learn more about each type.
129-#[derive(Debug, Copy, Clone, PartialEq, Eq, Ord)]
130+#[derive(Debug, Copy, Clone, PartialEq, Eq, PartialOrd, Ord)]
131 pub enum CanDerive {
132- /// No, we cannot.
133- No,
134+ /// Yes, we can derive automatically.
135+ Yes,
136
137 /// The only thing that stops us from automatically deriving is that
138 /// array with more than maximum number of elements is used.
139@@ -103,8 +103,8 @@ pub enum CanDerive {
140 /// This means we probably can "manually" implement such trait.
141 Manually,
142
143- /// Yes, we can derive automatically.
144- Yes,
145+ /// No, we cannot.
146+ No,
147 }
148
149 impl Default for CanDerive {
150@@ -113,22 +113,6 @@ impl Default for CanDerive {
151 }
152 }
153
154-impl cmp::PartialOrd for CanDerive {
155- fn partial_cmp(&self, rhs: &Self) -> Option<cmp::Ordering> {
156- use self::CanDerive::*;
157-
158- let ordering = match (*self, *rhs) {
159- (x, y) if x == y => cmp::Ordering::Equal,
160- (No, _) => cmp::Ordering::Greater,
161- (_, No) => cmp::Ordering::Less,
162- (Manually, _) => cmp::Ordering::Greater,
163- (_, Manually) => cmp::Ordering::Less,
164- _ => unreachable!()
165- };
166- Some(ordering)
167- }
168-}
169-
170 impl CanDerive {
171 /// Take the least upper bound of `self` and `rhs`.
172 pub fn join(self, rhs: Self) -> Self {