diff options
author | Tor Lillqvist <tml@iki.fi> | 2013-07-22 16:26:27 +0300 |
---|---|---|
committer | Tor Lillqvist <tml@iki.fi> | 2013-07-22 16:31:31 +0300 |
commit | 2cf07709dc23daf23ddfdfdd1091dc047cba886b (patch) | |
tree | 5495b60d6b196133a811857afdca680d3eae300e /boost | |
parent | 8b3a03a43f24ca6d072bc016d415a5339d516c32 (diff) |
WaE: may be used uninitialized
For some reason, GCC 4.7 targeting X86 in the Android NDK 8e complained about
the fields in the "btrd" struct in the union in binomial_distribution
(boost/random/binomial_distribution.hpp) maybe being uninitialized in a call
to its copy constructor. So make sure these fields are initialized in all
cases.
Change-Id: Iebae5e130cd6ca6ef5c476c6b0366d57c0303c88
Diffstat (limited to 'boost')
-rw-r--r-- | boost/UnpackedTarball_boost.mk | 1 | ||||
-rw-r--r-- | boost/boost.wuninitialized.patch | 10 |
2 files changed, 11 insertions, 0 deletions
diff --git a/boost/UnpackedTarball_boost.mk b/boost/UnpackedTarball_boost.mk index 3f78005f38c2..a353b033403d 100644 --- a/boost/UnpackedTarball_boost.mk +++ b/boost/UnpackedTarball_boost.mk @@ -46,6 +46,7 @@ boost_patches += boost.wunused.patch boost_patches += boost.wshadow.patch boost_patches += boost.wconstexpr-not-const.patch.0 boost_patches += boost.wdeprecated-register.patch.0 +boost_patches += boost.wuninitialized.patch $(eval $(call gb_UnpackedTarball_UnpackedTarball,boost)) diff --git a/boost/boost.wuninitialized.patch b/boost/boost.wuninitialized.patch new file mode 100644 index 000000000000..1b6384e3e7fa --- /dev/null +++ b/boost/boost.wuninitialized.patch @@ -0,0 +1,10 @@ +--- foo/foo/foo/boost/random/binomial_distribution.hpp ++++ foo/foo/foo/boost/random/binomial_distribution.hpp +@@ -278,6 +278,7 @@ + m = static_cast<IntType>((t_lcl+1)*p_lcl); + + if(use_inversion()) { ++ btrd.r = btrd.nr = btrd.npq = btrd.b = btrd.a = btrd.c = btrd.alpha = btrd.v_r = btrd.u_rv_r = 0; + q_n = pow((1 - p_lcl), static_cast<RealType>(t_lcl)); + } else { + btrd.r = p_lcl/(1-p_lcl); |