From a0f536a8f34a1f60a9ff1c1eb3da9bb2868d03f9 Mon Sep 17 00:00:00 2001 From: Daniel James Date: Wed, 5 Oct 2016 09:42:18 +0100 Subject: [PATCH 1/6] Add -Wsign-conversion to flags --- hash/test/Jamfile.v2 | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/hash/test/Jamfile.v2 b/hash/test/Jamfile.v2 index ca4903b..928859f 100644 --- a/hash/test/Jamfile.v2 +++ b/hash/test/Jamfile.v2 @@ -10,9 +10,9 @@ project hash-tests all intel:on #intel:-strict-ansi - gcc:"-pedantic -Wstrict-aliasing -fstrict-aliasing -Wextra -Wsign-promo -Wunused-parameter -Wconversion -Wfloat-equal -Wshadow" - darwin:"-pedantic -Wstrict-aliasing -fstrict-aliasing -Wextra -Wsign-promo -Wunused-parameter -Wconversion -Wfloat-equal -Wshadow" - clang:"-pedantic -Wstrict-aliasing -fstrict-aliasing -Wextra -Wsign-promo -Wunused-parameter -Wconversion -Wfloat-equal -Wshadow" + gcc:"-pedantic -Wstrict-aliasing -fstrict-aliasing -Wextra -Wsign-promo -Wunused-parameter -Wsign-conversion -Wconversion -Wfloat-equal -Wshadow" + darwin:"-pedantic -Wstrict-aliasing -fstrict-aliasing -Wextra -Wsign-promo -Wunused-parameter -Wsign-conversion -Wconversion -Wfloat-equal -Wshadow" + clang:"-pedantic -Wstrict-aliasing -fstrict-aliasing -Wextra -Wsign-promo -Wunused-parameter -Wsign-conversion -Wconversion -Wfloat-equal -Wshadow" #msvc:on #gcc:on #darwin:on From 826f7013a1e73f1abc0adaa26d248aaf8e7ac0d7 Mon Sep 17 00:00:00 2001 From: Daniel James Date: Wed, 5 Oct 2016 09:49:27 +0100 Subject: [PATCH 2/6] Another signed conversion warning --- include/boost/functional/hash/hash.hpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/include/boost/functional/hash/hash.hpp b/include/boost/functional/hash/hash.hpp index 0a8ceeb..8590833 100644 --- a/include/boost/functional/hash/hash.hpp +++ b/include/boost/functional/hash/hash.hpp @@ -168,7 +168,7 @@ namespace boost template inline std::size_t hash_value_signed(T val) { - const int size_t_bits = std::numeric_limits::digits; + const unsigned int size_t_bits = std::numeric_limits::digits; // ceiling(std::numeric_limits::digits / size_t_bits) - 1 const int length = (std::numeric_limits::digits - 1) / size_t_bits; @@ -189,7 +189,7 @@ namespace boost template inline std::size_t hash_value_unsigned(T val) { - const int size_t_bits = std::numeric_limits::digits; + const unsigned int size_t_bits = std::numeric_limits::digits; // ceiling(std::numeric_limits::digits / size_t_bits) - 1 const int length = (std::numeric_limits::digits - 1) / size_t_bits; From d5b9e65f50da76ef06e33dccbbdf9ccca6762ff2 Mon Sep 17 00:00:00 2001 From: Daniel James Date: Wed, 5 Oct 2016 13:33:31 +0100 Subject: [PATCH 3/6] Remove -Wsign-conversion, old gcc doesn't support it. --- hash/test/Jamfile.v2 | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/hash/test/Jamfile.v2 b/hash/test/Jamfile.v2 index 928859f..1da2da8 100644 --- a/hash/test/Jamfile.v2 +++ b/hash/test/Jamfile.v2 @@ -10,8 +10,8 @@ project hash-tests all intel:on #intel:-strict-ansi - gcc:"-pedantic -Wstrict-aliasing -fstrict-aliasing -Wextra -Wsign-promo -Wunused-parameter -Wsign-conversion -Wconversion -Wfloat-equal -Wshadow" - darwin:"-pedantic -Wstrict-aliasing -fstrict-aliasing -Wextra -Wsign-promo -Wunused-parameter -Wsign-conversion -Wconversion -Wfloat-equal -Wshadow" + gcc:"-pedantic -Wstrict-aliasing -fstrict-aliasing -Wextra -Wsign-promo -Wunused-parameter -Wconversion -Wfloat-equal -Wshadow" + darwin:"-pedantic -Wstrict-aliasing -fstrict-aliasing -Wextra -Wsign-promo -Wunused-parameter -Wconversion -Wfloat-equal -Wshadow" clang:"-pedantic -Wstrict-aliasing -fstrict-aliasing -Wextra -Wsign-promo -Wunused-parameter -Wsign-conversion -Wconversion -Wfloat-equal -Wshadow" #msvc:on #gcc:on From 0a3577818572d6321f8ce79ff8a86e4dbf33fdd4 Mon Sep 17 00:00:00 2001 From: Rene Rivera Date: Fri, 7 Oct 2016 23:07:34 -0500 Subject: [PATCH 4/6] Add, and update, documentation build targets. --- doc/build.jam | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) create mode 100644 doc/build.jam diff --git a/doc/build.jam b/doc/build.jam new file mode 100644 index 0000000..c96db00 --- /dev/null +++ b/doc/build.jam @@ -0,0 +1,18 @@ +# Copyright (c) 2016 Rene Rivera +# +# Distributed under the Boost Software License, Version 1.0. +# (See accompanying file LICENSE_1_0.txt or copy at +# http://www.boost.org/LICENSE_1_0.txt) + +############################################################################### +alias boostdoc + : ../hash/doc//hash + : + : + : ; +explicit boostdoc ; +alias boostrelease + : ../factory/doc//standalone + ../forward/doc//standalone + ../overloaded_function/doc//doc ; +explicit boostrelease ; From 9f24e2eaf0e8437ee8e62b82565606dbb4914f9b Mon Sep 17 00:00:00 2001 From: Daniel James Date: Tue, 11 Oct 2016 10:07:11 +0100 Subject: [PATCH 5/6] Try to avoid more warnings --- include/boost/functional/hash/hash.hpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/include/boost/functional/hash/hash.hpp b/include/boost/functional/hash/hash.hpp index 8590833..2e21091 100644 --- a/include/boost/functional/hash/hash.hpp +++ b/include/boost/functional/hash/hash.hpp @@ -171,7 +171,7 @@ namespace boost const unsigned int size_t_bits = std::numeric_limits::digits; // ceiling(std::numeric_limits::digits / size_t_bits) - 1 const int length = (std::numeric_limits::digits - 1) - / size_t_bits; + / static_cast(size_t_bits); std::size_t seed = 0; T positive = val < 0 ? -1 - val : val; @@ -192,7 +192,7 @@ namespace boost const unsigned int size_t_bits = std::numeric_limits::digits; // ceiling(std::numeric_limits::digits / size_t_bits) - 1 const int length = (std::numeric_limits::digits - 1) - / size_t_bits; + / static_cast(size_t_bits); std::size_t seed = 0; @@ -236,7 +236,7 @@ namespace boost inline void hash_combine_impl(boost::uint64_t& h, boost::uint64_t k) { - const uint64_t m = UINT64_C(0xc6a4a7935bd1e995); + const boost::uint64_t m = UINT64_C(0xc6a4a7935bd1e995); const int r = 47; k *= m; From 1cdfd70777ce344b31a938d9aff43e69199d1f3d Mon Sep 17 00:00:00 2001 From: Daniel James Date: Fri, 14 Oct 2016 09:24:13 +0100 Subject: [PATCH 6/6] Document warning fixes in 1.63.0 --- hash/doc/changes.qbk | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/hash/doc/changes.qbk b/hash/doc/changes.qbk index f7ab411..ba870de 100644 --- a/hash/doc/changes.qbk +++ b/hash/doc/changes.qbk @@ -179,4 +179,8 @@ * Fixed strict aliasing violation ([@https://github.com/boostorg/functional/pull/3 GitHub #3]). +[h2 Boost 1.63.0] + +* Fixed some warnings. + [endsect]