-
Notifications
You must be signed in to change notification settings - Fork 757
Enable more warning flags. #1359
Enable more warning flags. #1359
Conversation
run tests |
7d6d247
to
5413017
Compare
run tests |
21bbf7b
to
e67f342
Compare
e67f342
to
ef350b0
Compare
const uint64_t key) const { | ||
uint64_t hash0 = thrust::random::taus88(value)(); | ||
const uint64_t key_) const { | ||
uint64_t hash0 = thrust::random::taus88(static_cast<uint32_t>(value))(); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can this be std::uint32_t
and std::uint64_t
?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
No -- tau88
only accepts uint32_t
inputs. This doesn't change anything, it just makes the implicit cast explicit and silences the conversion warnings.
I checked with the shuffle
author about this change and he was fine with it, it shouldn't affect the results.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I just meant stick std::
in front of the types.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Done.
ef350b0
to
b9e6052
Compare
run tests |
1a0ff3a
to
46db957
Compare
run tests |
46db957
to
ec1df9f
Compare
run tests |
ec1df9f
to
b3b8a67
Compare
run tests |
b3b8a67
to
eab18bc
Compare
run tests |
DVS CL: 29547313 |
Replaces the macros for: - THRUST_CONSTEXPR - THRUST_OVERRIDE - THRUST_DEFAULT - THRUST_NOEXCEPT - THRUST_FINAL
MSVC /W4 issues warnings when this could be used but isn't. We still have to suppress the MSVC warnings since there's no way to silence them pre-C++17.
Anonymous structs are C features. In C++, they're non-portable compiler extensions. These only seemed to pop up in CUB-style `TempStorage` objects, I just picked some reasonable sounding names for them.
Some tests throw exceptions unconditionally and this warning is safe to ignore in such cases. Added a `thrust.silence_unreachable_code_warnings` interface target to collect various compiler flags that disable these warnings. This can be linked selectively in a per-test `<testname>.cmake` file to only disable warnings on the tests where this behavior is expected.
The unittest_static_assert test needs to be disable for TBB/OMP hosts, too.
The `cuda_std_17` compile feature is broken for MSVC when CMake < 3.18.3.
The expression `(n + d - 1) / d` can overflow the numerator. The new method avoids that. See NVIDIA/cub#221 for reference.
Also removed some obsolete C++98 checks.
Includes a workaround that fixes NVIDIA#1273.
d729e2d
to
f3e511f
Compare
Fixes NVIDIA/cub#228.
Fixes #1273.
Requires NVIDIA/cub#249.