Skip to content

Commit

Permalink
Merge pull request #6016 from masterleinad/use_wextra
Browse files Browse the repository at this point in the history
Use -Wextra in CI
  • Loading branch information
dalg24 authored Apr 12, 2023
2 parents 72687d8 + b57c17b commit bb845f2
Show file tree
Hide file tree
Showing 8 changed files with 29 additions and 32 deletions.
7 changes: 1 addition & 6 deletions cmake/kokkos_arch.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -120,7 +120,7 @@ KOKKOS_ARCH_OPTION(INTEL_PVC GPU "Intel GPU Ponte Vecchio"

IF(KOKKOS_ENABLE_COMPILER_WARNINGS)
SET(COMMON_WARNINGS
"-Wall" "-Wunused-parameter" "-Wshadow" "-pedantic"
"-Wall" "-Wextra" "-Wunused-parameter" "-Wshadow" "-pedantic"
"-Wsign-compare" "-Wtype-limits" "-Wuninitialized")

# NOTE KOKKOS_ prefixed variable (all uppercase) is not set yet because TPLs are processed after ARCH
Expand All @@ -129,11 +129,6 @@ IF(KOKKOS_ENABLE_COMPILER_WARNINGS)
LIST(REMOVE_ITEM COMMON_WARNINGS "-pedantic")
ENDIF()

# OpenMPTarget compilers give erroneous warnings about sign comparison in loops
IF(KOKKOS_ENABLE_OPENMPTARGET)
LIST(REMOVE_ITEM COMMON_WARNINGS "-Wsign-compare")
ENDIF()

# NVHPC compiler does not support -Wtype-limits.
IF(KOKKOS_ENABLE_OPENACC)
IF(KOKKOS_CXX_COMPILER_ID STREQUAL NVHPC)
Expand Down
6 changes: 3 additions & 3 deletions containers/src/Kokkos_OffsetView.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -938,10 +938,10 @@ class OffsetView : public ViewTraits<DataType, Properties...> {
")"
"\n";

// If there are no errors so far, then rank == Rank
// If there are no errors so far, then arg_rank == Rank
// Otherwise, check as much as possible
size_t rank = begins.size() < ends.size() ? begins.size() : ends.size();
for (size_t i = 0; i != rank; ++i) {
size_t arg_rank = begins.size() < ends.size() ? begins.size() : ends.size();
for (size_t i = 0; i != arg_rank; ++i) {
subtraction_failure sf = check_subtraction(at(ends, i), at(begins, i));
if (sf != subtraction_failure::none) {
message +=
Expand Down
4 changes: 2 additions & 2 deletions core/src/Kokkos_View.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -316,8 +316,8 @@ struct ViewTraits {
typename prop::specialize,
typename data_analysis::specialize>; /* mapping specialization tag */

enum { rank = dimension::rank };
enum { rank_dynamic = dimension::rank_dynamic };
static constexpr unsigned rank = dimension::rank;
static constexpr unsigned rank_dynamic = dimension::rank_dynamic;

//------------------------------------
// Execution space, memory space, memory access traits, and host mirror space.
Expand Down
2 changes: 1 addition & 1 deletion core/src/OpenMPTarget/Kokkos_OpenMPTarget_Exec.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -72,7 +72,7 @@ void OpenMPTargetExec::verify_initialized(const char* const label) {
void* OpenMPTargetExec::m_scratch_ptr = nullptr;
int64_t OpenMPTargetExec::m_scratch_size = 0;
int* OpenMPTargetExec::m_lock_array = nullptr;
int64_t OpenMPTargetExec::m_lock_size = 0;
uint64_t OpenMPTargetExec::m_lock_size = 0;
uint32_t* OpenMPTargetExec::m_uniquetoken_ptr = nullptr;

void OpenMPTargetExec::clear_scratch() {
Expand Down
2 changes: 1 addition & 1 deletion core/src/OpenMPTarget/Kokkos_OpenMPTarget_Parallel.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -748,7 +748,7 @@ class OpenMPTargetExec {
static void* m_scratch_ptr;
static int64_t m_scratch_size;
static int* m_lock_array;
static int64_t m_lock_size;
static uint64_t m_lock_size;
static uint32_t* m_uniquetoken_ptr;
};

Expand Down
2 changes: 1 addition & 1 deletion core/src/impl/Kokkos_ViewArray.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -123,7 +123,7 @@ class ViewMapping<Traits, Kokkos::Array<>> {
//----------------------------------------
// Domain dimensions

enum { Rank = Traits::dimension::rank };
static constexpr unsigned Rank = Traits::dimension::rank;

template <typename iType>
KOKKOS_INLINE_FUNCTION constexpr size_t extent(const iType &r) const {
Expand Down
32 changes: 17 additions & 15 deletions core/src/impl/Kokkos_ViewMapping.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -159,8 +159,8 @@ struct KOKKOS_IMPL_ENFORCE_EMPTY_BASE_OPTIMIZATION ViewDimension
using D6::N6;
using D7::N7;

enum : unsigned { rank = sizeof...(Vals) };
enum : unsigned { rank_dynamic = Impl::rank_dynamic<Vals...>::value };
static constexpr unsigned rank = sizeof...(Vals);
static constexpr unsigned rank_dynamic = Impl::rank_dynamic<Vals...>::value;

ViewDimension() = default;
ViewDimension(const ViewDimension&) = default;
Expand Down Expand Up @@ -2189,7 +2189,8 @@ struct ViewStride;

template <>
struct ViewStride<0> {
enum { S0 = 0, S1 = 0, S2 = 0, S3 = 0, S4 = 0, S5 = 0, S6 = 0, S7 = 0 };
static constexpr size_t S0 = 0, S1 = 0, S2 = 0, S3 = 0, S4 = 0, S5 = 0,
S6 = 0, S7 = 0;

ViewStride() = default;
ViewStride(const ViewStride&) = default;
Expand All @@ -2203,7 +2204,8 @@ struct ViewStride<0> {
template <>
struct ViewStride<1> {
size_t S0;
enum { S1 = 0, S2 = 0, S3 = 0, S4 = 0, S5 = 0, S6 = 0, S7 = 0 };
static constexpr size_t S1 = 0, S2 = 0, S3 = 0, S4 = 0, S5 = 0, S6 = 0,
S7 = 0;

ViewStride() = default;
ViewStride(const ViewStride&) = default;
Expand All @@ -2218,7 +2220,7 @@ struct ViewStride<1> {
template <>
struct ViewStride<2> {
size_t S0, S1;
enum { S2 = 0, S3 = 0, S4 = 0, S5 = 0, S6 = 0, S7 = 0 };
static constexpr size_t S2 = 0, S3 = 0, S4 = 0, S5 = 0, S6 = 0, S7 = 0;

ViewStride() = default;
ViewStride(const ViewStride&) = default;
Expand All @@ -2233,7 +2235,7 @@ struct ViewStride<2> {
template <>
struct ViewStride<3> {
size_t S0, S1, S2;
enum { S3 = 0, S4 = 0, S5 = 0, S6 = 0, S7 = 0 };
static constexpr size_t S3 = 0, S4 = 0, S5 = 0, S6 = 0, S7 = 0;

ViewStride() = default;
ViewStride(const ViewStride&) = default;
Expand All @@ -2248,7 +2250,7 @@ struct ViewStride<3> {
template <>
struct ViewStride<4> {
size_t S0, S1, S2, S3;
enum { S4 = 0, S5 = 0, S6 = 0, S7 = 0 };
static constexpr size_t S4 = 0, S5 = 0, S6 = 0, S7 = 0;

ViewStride() = default;
ViewStride(const ViewStride&) = default;
Expand All @@ -2263,7 +2265,7 @@ struct ViewStride<4> {
template <>
struct ViewStride<5> {
size_t S0, S1, S2, S3, S4;
enum { S5 = 0, S6 = 0, S7 = 0 };
static constexpr size_t S5 = 0, S6 = 0, S7 = 0;

ViewStride() = default;
ViewStride(const ViewStride&) = default;
Expand All @@ -2278,7 +2280,7 @@ struct ViewStride<5> {
template <>
struct ViewStride<6> {
size_t S0, S1, S2, S3, S4, S5;
enum { S6 = 0, S7 = 0 };
static constexpr size_t S6 = 0, S7 = 0;

ViewStride() = default;
ViewStride(const ViewStride&) = default;
Expand All @@ -2293,7 +2295,7 @@ struct ViewStride<6> {
template <>
struct ViewStride<7> {
size_t S0, S1, S2, S3, S4, S5, S6;
enum { S7 = 0 };
static constexpr size_t S7 = 0;

ViewStride() = default;
ViewStride(const ViewStride&) = default;
Expand Down Expand Up @@ -3146,7 +3148,7 @@ class ViewMapping<
//----------------------------------------
// Domain dimensions

enum { Rank = Traits::dimension::rank };
static constexpr unsigned Rank = Traits::dimension::rank;

template <typename iType>
KOKKOS_INLINE_FUNCTION constexpr size_t extent(const iType& r) const {
Expand Down Expand Up @@ -3662,7 +3664,7 @@ class ViewMapping<
size_t exp_stride = 1;
if (std::is_same<typename DstTraits::array_layout,
Kokkos::LayoutLeft>::value) {
for (int i = 0; i < src.Rank; i++) {
for (unsigned int i = 0; i < src.Rank; i++) {
if (i > 0) exp_stride *= src.extent(i - 1);
if (strides[i] != exp_stride) {
assignable = false;
Expand All @@ -3671,9 +3673,9 @@ class ViewMapping<
}
} else if (std::is_same<typename DstTraits::array_layout,
Kokkos::LayoutRight>::value) {
for (int i = src.Rank - 1; i >= 0; i--) {
if (i < src.Rank - 1) exp_stride *= src.extent(i + 1);
if (strides[i] != exp_stride) {
for (unsigned int i = 0; i < src.Rank; i++) {
if (i > 0) exp_stride *= src.extent(src.Rank - i);
if (strides[src.Rank - 1 - i] != exp_stride) {
assignable = false;
break;
}
Expand Down
6 changes: 3 additions & 3 deletions core/unit_test/TestTaskScheduler.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -170,9 +170,9 @@ struct TestTaskDependence {

KOKKOS_INLINE_FUNCTION
void operator()(typename sched_type::member_type& member) {
auto& sched = member.scheduler();
enum { CHUNK = 8 };
const int n = CHUNK < m_count ? CHUNK : m_count;
auto& sched = member.scheduler();
static constexpr int CHUNK = 8;
const int n = CHUNK < m_count ? CHUNK : m_count;

if (1 < m_count) {
const int increment = (m_count + n - 1) / n;
Expand Down

0 comments on commit bb845f2

Please sign in to comment.