diff --git a/.lintrunner.toml b/.lintrunner.toml index 4789991736b..5fa37ef3b6b 100644 --- a/.lintrunner.toml +++ b/.lintrunner.toml @@ -210,6 +210,8 @@ include_patterns = [ 'aten/src/ATen/native/nested/*.h', 'c10/**/*.cpp', 'c10/**/*.h', + 'caffe2/**/*.cc', + 'caffe2/**/*.h', 'torch/*.h', 'torch/csrc/*.h', 'torch/csrc/*.cpp', diff --git a/BUCK.oss b/BUCK.oss index 13d5518801a..448cce08cd8 100644 --- a/BUCK.oss +++ b/BUCK.oss @@ -65,7 +65,6 @@ cxx_library( "caffe2/serialize/file_adapter.cc", "caffe2/serialize/inline_container.cc", "caffe2/serialize/istream_adapter.cc", - "caffe2/serialize/read_adapter_interface.cc", ], visibility = ["PUBLIC"], deps = [ diff --git a/BUILD.bazel b/BUILD.bazel index 1018f7907ad..e5ab0d0e29b 100644 --- a/BUILD.bazel +++ b/BUILD.bazel @@ -473,7 +473,6 @@ filegroup( "caffe2/serialize/file_adapter.cc", "caffe2/serialize/inline_container.cc", "caffe2/serialize/istream_adapter.cc", - "caffe2/serialize/read_adapter_interface.cc", ], ) diff --git a/build.bzl b/build.bzl index dbb1866ac54..3b72864f047 100644 --- a/build.bzl +++ b/build.bzl @@ -34,7 +34,6 @@ def define_targets(rules): "caffe2/serialize/file_adapter.cc", "caffe2/serialize/inline_container.cc", "caffe2/serialize/istream_adapter.cc", - "caffe2/serialize/read_adapter_interface.cc", ], copts = ["-fexceptions"], tags = [ diff --git a/caffe2/core/timer.h b/caffe2/core/timer.h index a0384b0dbdb..28d373f468d 100644 --- a/caffe2/core/timer.h +++ b/caffe2/core/timer.h @@ -3,7 +3,7 @@ #include -#include "caffe2/core/common.h" +#include namespace caffe2 { diff --git a/caffe2/perfkernels/common_avx.cc b/caffe2/perfkernels/common_avx.cc index 08c70d8966b..cdb8b760a0d 100644 --- a/caffe2/perfkernels/common_avx.cc +++ b/caffe2/perfkernels/common_avx.cc @@ -2,7 +2,7 @@ // example, if your compiler did not specify -mavx, you should not provide // the CAFFE2_PERF_WITH_AVX macro. -#include "caffe2/core/common.h" +#include "caffe2/core/macros.h" #ifdef CAFFE2_PERF_WITH_AVX #ifndef __AVX__ diff --git a/caffe2/perfkernels/common_avx2.cc b/caffe2/perfkernels/common_avx2.cc index 3db34aa549d..a45d887b2b4 100644 --- a/caffe2/perfkernels/common_avx2.cc +++ b/caffe2/perfkernels/common_avx2.cc @@ -2,7 +2,7 @@ // example, if your compiler did not specify -mavx2, you should not provide // the CAFFE2_PERF_WITH_AVX2 macro. -#include "caffe2/core/common.h" +#include "caffe2/core/macros.h" #ifdef CAFFE2_PERF_WITH_AVX2 #ifndef __AVX2__ diff --git a/caffe2/serialize/CMakeLists.txt b/caffe2/serialize/CMakeLists.txt index 1552b59d0d4..30303e8b744 100644 --- a/caffe2/serialize/CMakeLists.txt +++ b/caffe2/serialize/CMakeLists.txt @@ -6,8 +6,7 @@ list(APPEND Caffe2_CPU_SRCS ${CMAKE_CURRENT_SOURCE_DIR}/inline_container.cc ${CMAKE_CURRENT_SOURCE_DIR}/istream_adapter.cc ${CMAKE_CURRENT_SOURCE_DIR}/file_adapter.cc - ${CMAKE_CURRENT_SOURCE_DIR}/crc.cc - ${CMAKE_CURRENT_SOURCE_DIR}/read_adapter_interface.cc) + ${CMAKE_CURRENT_SOURCE_DIR}/crc.cc) list(APPEND Caffe2_CPU_INCLUDE ${PROJECT_SOURCE_DIR}/third_party/miniz-2.1.0) set(Caffe2_CPU_TEST_SRCS ${Caffe2_CPU_TEST_SRCS} PARENT_SCOPE) diff --git a/caffe2/serialize/crc_alt.h b/caffe2/serialize/crc_alt.h index 9d1c4f1dc7d..10f9c6bdb38 100644 --- a/caffe2/serialize/crc_alt.h +++ b/caffe2/serialize/crc_alt.h @@ -25,7 +25,7 @@ // using the aforementioned #defines the table is automatically fitted to your needs // uint8_t, uint32_t, int32_t -#include +#include // size_t #include diff --git a/caffe2/serialize/file_adapter.cc b/caffe2/serialize/file_adapter.cc index 67634d7f7fd..f112dd61e5d 100644 --- a/caffe2/serialize/file_adapter.cc +++ b/caffe2/serialize/file_adapter.cc @@ -3,13 +3,11 @@ #include #include #include -#include "caffe2/core/common.h" -namespace caffe2 { -namespace serialize { +namespace caffe2::serialize { -FileAdapter::RAIIFile::RAIIFile(const std::string& file_name) { - fp_ = fopen(file_name.c_str(), "rb"); +FileAdapter::RAIIFile::RAIIFile(const std::string& file_name) + : fp_(fopen(file_name.c_str(), "rb")) { if (fp_ == nullptr) { auto old_errno = errno; #if defined(_WIN32) && (defined(__MINGW32__) || defined(_MSC_VER)) @@ -77,5 +75,4 @@ size_t FileAdapter::read(uint64_t pos, void* buf, size_t n, const char* what) FileAdapter::~FileAdapter() = default; -} // namespace serialize -} // namespace caffe2 +} // namespace caffe2::serialize diff --git a/caffe2/serialize/file_adapter.h b/caffe2/serialize/file_adapter.h index 36bc5de2710..36663e3ea8d 100644 --- a/caffe2/serialize/file_adapter.h +++ b/caffe2/serialize/file_adapter.h @@ -1,14 +1,11 @@ #pragma once -#include -#include #include +#include -#include "caffe2/serialize/istream_adapter.h" #include "caffe2/serialize/read_adapter_interface.h" -namespace caffe2 { -namespace serialize { +namespace caffe2::serialize { class TORCH_API FileAdapter final : public ReadAdapterInterface { public: @@ -32,5 +29,4 @@ class TORCH_API FileAdapter final : public ReadAdapterInterface { uint64_t size_; }; -} // namespace serialize -} // namespace caffe2 +} // namespace caffe2::serialize diff --git a/caffe2/serialize/in_memory_adapter.h b/caffe2/serialize/in_memory_adapter.h index 817f3f5d677..869ead3b245 100644 --- a/caffe2/serialize/in_memory_adapter.h +++ b/caffe2/serialize/in_memory_adapter.h @@ -1,10 +1,9 @@ #pragma once -#include #include +#include +#include - -namespace caffe2 { -namespace serialize { +namespace caffe2::serialize { class MemoryReadAdapter final : public caffe2::serialize::ReadAdapterInterface { public: @@ -15,18 +14,18 @@ class MemoryReadAdapter final : public caffe2::serialize::ReadAdapterInterface { return size_; } - size_t read(uint64_t pos, void* buf, size_t n, const char* what = "") - const override { - (void) what; + size_t read( + uint64_t pos, + void* buf, + size_t n, + const char* what [[maybe_unused]] = "") const override { memcpy(buf, (int8_t*)(data_) + pos, n); return n; } private: const void* data_; - off_t size_; + off_t size_{}; }; - -} // namespace serialize -} // namespace caffe2 +} // namespace caffe2::serialize diff --git a/caffe2/serialize/inline_container.cc b/caffe2/serialize/inline_container.cc index 2761147cf33..c232838dec0 100644 --- a/caffe2/serialize/inline_container.cc +++ b/caffe2/serialize/inline_container.cc @@ -10,15 +10,11 @@ #include #include -#include -#include #include -#include #include #include #include -#include "caffe2/core/common.h" #include "caffe2/serialize/file_adapter.h" #include "caffe2/serialize/inline_container.h" #include "caffe2/serialize/istream_adapter.h" @@ -27,8 +23,8 @@ #include "caffe2/serialize/versions.h" #include "miniz.h" -namespace caffe2 { -namespace serialize { + +namespace caffe2::serialize { constexpr c10::string_view kDebugPklSuffix(".debug_pkl"); struct MzZipReaderIterWrapper { @@ -194,8 +190,7 @@ void PyTorchStreamReader::init() { // version check at::DataPtr version_ptr; - // NOLINTNEXTLINE(cppcoreguidelines-init-variables) - size_t version_size; + size_t version_size = 0; if (hasRecord(".data/version")) { std::tie(version_ptr, version_size) = getRecord(".data/version"); } else { @@ -204,7 +199,7 @@ void PyTorchStreamReader::init() { } std::string version(static_cast(version_ptr.get()), version_size); try { - version_ = std::stoull(version); + version_ = std::stoll(version); } catch (const std::invalid_argument& e) { CAFFE_THROW("Couldn't parse the version ", version, @@ -627,7 +622,7 @@ PyTorchStreamWriter::PyTorchStreamWriter(const std::string& file_name) } PyTorchStreamWriter::PyTorchStreamWriter( - const std::function writer_func) + const std::function& writer_func) : archive_name_("archive"), writer_func_(writer_func) { setup(archive_name_); @@ -638,7 +633,7 @@ void PyTorchStreamWriter::setup(const string& file_name) { memset(ar_.get(), 0, sizeof(mz_zip_archive)); archive_name_plus_slash_ = archive_name_ + "/"; // for writeRecord(). - if (archive_name_.size() == 0) { + if (archive_name_.empty()) { CAFFE_THROW("invalid file name: ", file_name); } if (!writer_func_) { @@ -649,7 +644,7 @@ void PyTorchStreamWriter::setup(const string& file_name) { const std::string dir_name = parentdir(file_name); if(!dir_name.empty()) { - struct stat st; + struct stat st{}; bool dir_exists = (stat(dir_name.c_str(), &st) == 0 && (st.st_mode & S_IFDIR)); TORCH_CHECK(dir_exists, "Parent directory ", dir_name, " does not exist."); } @@ -706,8 +701,8 @@ void PyTorchStreamWriter::writeRecord( /*uncomp_size=*/0, /*uncomp_crc32=*/0, /*last_modified=*/nullptr, - /*user_extra_data=*/padding_.c_str(), - /*user_extra_data_len=*/padding_size, + /*user_extra_data_local=*/padding_.c_str(), + /*user_extra_data_local_len=*/padding_size, /*user_extra_data_central=*/nullptr, /*user_extra_data_central_len=*/0); valid("writing file ", name.c_str()); @@ -820,5 +815,4 @@ PyTorchStreamWriter::~PyTorchStreamWriter() { } } -} // namespace serialize -} // namespace caffe2 +} // namespace caffe2::serialize diff --git a/caffe2/serialize/inline_container.h b/caffe2/serialize/inline_container.h index 6a13d414feb..fe319e9011b 100644 --- a/caffe2/serialize/inline_container.h +++ b/caffe2/serialize/inline_container.h @@ -6,7 +6,6 @@ #include #include #include -#include #include #include @@ -91,8 +90,8 @@ typedef struct mz_zip_archive mz_zip_archive; // model.json as the last file when writing after we have accumulated all // other information. -namespace caffe2 { -namespace serialize { + +namespace caffe2::serialize { static constexpr const char* kSerializationIdRecordName = ".data/serialization_id"; @@ -196,18 +195,18 @@ class TORCH_API PyTorchStreamReader final { std::string archive_name_; std::string archive_name_plus_slash_; std::shared_ptr in_; - int64_t version_; + int64_t version_{}; std::mutex reader_lock_; bool load_debug_symbol_ = true; std::string serialization_id_; - size_t additional_reader_size_threshold_; + size_t additional_reader_size_threshold_{}; }; class TORCH_API PyTorchStreamWriter final { public: explicit PyTorchStreamWriter(const std::string& archive_name); explicit PyTorchStreamWriter( - const std::function writer_func); + const std::function& writer_func); void setMinVersion(const uint64_t version); @@ -274,5 +273,4 @@ size_t getPadding( std::string& padding_buf); } // namespace detail -} // namespace serialize -} // namespace caffe2 +} // namespace caffe2::serialize diff --git a/caffe2/serialize/inline_container_test.cc b/caffe2/serialize/inline_container_test.cc index 4e027f68196..4e58c0d6099 100644 --- a/caffe2/serialize/inline_container_test.cc +++ b/caffe2/serialize/inline_container_test.cc @@ -5,12 +5,14 @@ #include -#include "caffe2/serialize/inline_container.h" #include -#include "c10/util/irange.h" +#include +#include "caffe2/serialize/inline_container.h" +#include "caffe2/serialize/istream_adapter.h" -namespace caffe2 { -namespace serialize { + +// NOLINTBEGIN(*-narrowing-conversions) +namespace caffe2::serialize { namespace { TEST(PyTorchStreamWriterAndReader, SaveAndLoad) { @@ -19,7 +21,7 @@ TEST(PyTorchStreamWriterAndReader, SaveAndLoad) { std::ostringstream oss; // write records through writers PyTorchStreamWriter writer([&](const void* b, size_t n) -> size_t { - oss.write(static_cast(b), n); + oss.write(static_cast(b), static_cast(n)); return oss ? n : 0; }); // NOLINTNEXTLINE(cppcoreguidelines-pro-type-member-init,cppcoreguidelines-avoid-magic-numbers) @@ -28,14 +30,14 @@ TEST(PyTorchStreamWriterAndReader, SaveAndLoad) { std::vector buf(data1.size()); for (auto i : c10::irange(data1.size())) { - data1[i] = data1.size() - i; + data1[i] = static_cast(data1.size() - i); } writer.writeRecord("key1", data1.data(), data1.size()); // NOLINTNEXTLINE(cppcoreguidelines-pro-type-member-init,cppcoreguidelines-avoid-magic-numbers) std::array data2; for (auto i : c10::irange(data2.size())) { - data2[i] = data2.size() - i; + data2[i] = static_cast(data2.size() - i); } writer.writeRecord("key2", data2.data(), data2.size()); @@ -149,7 +151,7 @@ TEST(PyTorchStreamWriterAndReader, LoadWithMultiThreads) { PyTorchStreamReader reader(&iss); reader.setAdditionalReaderSizeThreshold(0); // before testing, sanity check - int64_t size1, size2, ret; + int64_t size1 = 0, size2 = 0, ret = 0; at::DataPtr data_ptr; std::tie(data_ptr, size1) = reader.getRecord("key1"); std::tie(data_ptr, size2) = reader.getRecord("key2"); @@ -296,7 +298,7 @@ TEST(PytorchStreamWriterAndReader, SkipDebugRecords) { reader.setShouldLoadDebugSymbol(false); EXPECT_FALSE(reader.hasRecord("key1.debug_pkl")); at::DataPtr ptr; - size_t size; + size_t size = 0; std::tie(ptr, size) = reader.getRecord("key1.debug_pkl"); EXPECT_EQ(size, 0); std::vector dst(data1.size()); @@ -479,5 +481,5 @@ TEST_P(ChunkRecordIteratorTest, ChunkRead) { } } // namespace -} // namespace serialize -} // namespace caffe2 +} // namespace caffe2::serialize +// NOLINTEND(*-narrowing-conversions) diff --git a/caffe2/serialize/istream_adapter.cc b/caffe2/serialize/istream_adapter.cc index 9509a088736..baad0e9b2ee 100644 --- a/caffe2/serialize/istream_adapter.cc +++ b/caffe2/serialize/istream_adapter.cc @@ -1,8 +1,7 @@ #include "caffe2/serialize/istream_adapter.h" #include -namespace caffe2 { -namespace serialize { +namespace caffe2::serialize { IStreamAdapter::IStreamAdapter(std::istream* istream) : istream_(istream) {} @@ -33,8 +32,6 @@ void IStreamAdapter::validate(const char* what) const { } } -// NOLINTNEXTLINE(modernize-use-equals-default) -IStreamAdapter::~IStreamAdapter() {} +IStreamAdapter::~IStreamAdapter() = default; -} // namespace serialize -} // namespace caffe2 +} // namespace caffe2::serialize diff --git a/caffe2/serialize/istream_adapter.h b/caffe2/serialize/istream_adapter.h index 680c288a15f..69f91faf3a7 100644 --- a/caffe2/serialize/istream_adapter.h +++ b/caffe2/serialize/istream_adapter.h @@ -5,8 +5,7 @@ #include "c10/macros/Macros.h" #include "caffe2/serialize/read_adapter_interface.h" -namespace caffe2 { -namespace serialize { +namespace caffe2::serialize { // this is a reader implemented by std::istream class TORCH_API IStreamAdapter final : public ReadAdapterInterface { @@ -23,5 +22,4 @@ class TORCH_API IStreamAdapter final : public ReadAdapterInterface { void validate(const char* what) const; }; -} // namespace serialize -} // namespace caffe2 +} // namespace caffe2::serialize diff --git a/caffe2/serialize/read_adapter_interface.cc b/caffe2/serialize/read_adapter_interface.cc deleted file mode 100644 index e9b84660efd..00000000000 --- a/caffe2/serialize/read_adapter_interface.cc +++ /dev/null @@ -1,10 +0,0 @@ -#include "caffe2/serialize/read_adapter_interface.h" - -namespace caffe2 { -namespace serialize { - -// NOLINTNEXTLINE(modernize-use-equals-default) -ReadAdapterInterface::~ReadAdapterInterface() {} - -} // namespace serialize -} // namespace caffe2 diff --git a/caffe2/serialize/read_adapter_interface.h b/caffe2/serialize/read_adapter_interface.h index 0a6b5b74a76..450db5c9b73 100644 --- a/caffe2/serialize/read_adapter_interface.h +++ b/caffe2/serialize/read_adapter_interface.h @@ -3,21 +3,19 @@ #include #include -#include "c10/macros/Macros.h" +#include -namespace caffe2 { -namespace serialize { +namespace caffe2::serialize { // this is the interface for the (file/stream/memory) reader in -// PyTorchStreamReader. with this interface, we can extend the support +// PyTorchStreamReader. With this interface, we can extend the support // besides standard istream class TORCH_API ReadAdapterInterface { public: virtual size_t size() const = 0; virtual size_t read(uint64_t pos, void* buf, size_t n, const char* what = "") const = 0; - virtual ~ReadAdapterInterface(); + virtual ~ReadAdapterInterface() = default; }; -} // namespace serialize -} // namespace caffe2 +} // namespace caffe2::serialize diff --git a/caffe2/serialize/versions.h b/caffe2/serialize/versions.h index 6e2c27adc8f..aa3a6b1753a 100644 --- a/caffe2/serialize/versions.h +++ b/caffe2/serialize/versions.h @@ -1,8 +1,7 @@ #pragma once #include -namespace caffe2 { -namespace serialize { +namespace caffe2::serialize { constexpr uint64_t kMinSupportedFileFormatVersion = 0x1L; @@ -129,5 +128,4 @@ constexpr uint64_t kProducedBytecodeVersion = 0x8L; constexpr uint64_t kMinSupportedBytecodeVersion = 0x4L; constexpr uint64_t kMaxSupportedBytecodeVersion = 0x9L; -} // namespace serialize -} // namespace caffe2 +} // namespace caffe2::serialize diff --git a/caffe2/utils/string_utils.cc b/caffe2/utils/string_utils.cc index ba763738f7b..8e31ada6e12 100644 --- a/caffe2/utils/string_utils.cc +++ b/caffe2/utils/string_utils.cc @@ -51,7 +51,7 @@ size_t editDistance( (c)=(uint8_t)(s)[(i)++]; \ } -int32_t editDistanceHelper(const char* s1, +size_t editDistanceHelper(const char* s1, size_t s1_len, const char* s2, size_t s2_len, diff --git a/caffe2/utils/string_utils.h b/caffe2/utils/string_utils.h index 6bf3b867b54..677e25deed7 100644 --- a/caffe2/utils/string_utils.h +++ b/caffe2/utils/string_utils.h @@ -39,7 +39,7 @@ TORCH_API inline bool EndsWith( } } -TORCH_API int32_t editDistanceHelper( +TORCH_API size_t editDistanceHelper( const char* s1, size_t s1_len, const char* s2, diff --git a/caffe2/utils/threadpool/ThreadPool.h b/caffe2/utils/threadpool/ThreadPool.h index dbaefc51389..b5bc9dd44fd 100644 --- a/caffe2/utils/threadpool/ThreadPool.h +++ b/caffe2/utils/threadpool/ThreadPool.h @@ -1,15 +1,11 @@ #ifndef CAFFE2_UTILS_THREADPOOL_H_ #define CAFFE2_UTILS_THREADPOOL_H_ -#include "ThreadPoolCommon.h" - -#include #include #include #include -#include -#include "caffe2/core/common.h" +#include // // A work-stealing threadpool loosely based off of pthreadpool diff --git a/caffe2/utils/threadpool/pthreadpool.cc b/caffe2/utils/threadpool/pthreadpool.cc index b8c6c7cebb8..2f2866a77d4 100644 --- a/caffe2/utils/threadpool/pthreadpool.cc +++ b/caffe2/utils/threadpool/pthreadpool.cc @@ -1,9 +1,9 @@ /* Standard C headers */ -#include -#include -#include -#include -#include +#include + +#include +#include +#include #include #ifdef _MSC_VER @@ -71,8 +71,8 @@ void legacy_pthreadpool_compute_1d_tiled( } struct compute_2d_context { - legacy_pthreadpool_function_2d_t function; - void* argument; + legacy_pthreadpool_function_2d_t function{}; + void* argument{}; caffe2::FixedDivisor range_j; }; @@ -80,8 +80,8 @@ static void compute_2d(void* context_, size_t linear_index) { TORCH_DCHECK_LE(linear_index, std::numeric_limits::max()); const struct compute_2d_context* context = static_cast(context_); - int32_t q; - int32_t r; + int32_t q = 0; + int32_t r = 0; context->range_j.DivMod(static_cast(linear_index), &q, &r); context->function(context->argument, q, r); } @@ -112,18 +112,18 @@ void legacy_pthreadpool_compute_2d( } struct compute_2d_tiled_context { - legacy_pthreadpool_function_2d_tiled_t function; - void* argument; + legacy_pthreadpool_function_2d_tiled_t function{}; + void* argument{}; caffe2::FixedDivisor tile_range_j; - size_t range_i; - size_t range_j; - size_t tile_i; - size_t tile_j; + size_t range_i{}; + size_t range_j{}; + size_t tile_i{}; + size_t tile_j{}; }; static void compute_2d_tiled(void* context_, size_t linear_index) { - int32_t q; - int32_t r; + int32_t q = 0; + int32_t r = 0; const struct compute_2d_tiled_context* context = static_cast(context_); context->tile_range_j.DivMod(linear_index, &q, &r); @@ -172,26 +172,26 @@ void legacy_pthreadpool_compute_2d_tiled( } struct compute_3d_tiled_context { - legacy_pthreadpool_function_3d_tiled_t function; - void* argument; + legacy_pthreadpool_function_3d_tiled_t function{}; + void* argument{}; caffe2::FixedDivisor tile_range_j; caffe2::FixedDivisor tile_range_k; - size_t range_i; - size_t range_j; - size_t range_k; - size_t tile_i; - size_t tile_j; - size_t tile_k; + size_t range_i{}; + size_t range_j{}; + size_t range_k{}; + size_t tile_i{}; + size_t tile_j{}; + size_t tile_k{}; }; static void compute_3d_tiled( void* context_, size_t linear_index) { - int32_t tile_index_ij, tile_index_k; + int32_t tile_index_ij = 0, tile_index_k = 0; const struct compute_3d_tiled_context* context = static_cast(context_); context->tile_range_k.DivMod( static_cast(linear_index), &tile_index_ij, &tile_index_k); - int32_t tile_index_i, tile_index_j; + int32_t tile_index_i = 0, tile_index_j = 0; context->tile_range_j.DivMod(tile_index_ij, &tile_index_i, &tile_index_j); const size_t max_tile_i = context->tile_i; const size_t max_tile_j = context->tile_j; @@ -261,31 +261,31 @@ void legacy_pthreadpool_compute_3d_tiled( } struct compute_4d_tiled_context { - legacy_pthreadpool_function_4d_tiled_t function; - void* argument; + legacy_pthreadpool_function_4d_tiled_t function{}; + void* argument{}; caffe2::FixedDivisor tile_range_kl; caffe2::FixedDivisor tile_range_j; caffe2::FixedDivisor tile_range_l; - size_t range_i; - size_t range_j; - size_t range_k; - size_t range_l; - size_t tile_i; - size_t tile_j; - size_t tile_k; - size_t tile_l; + size_t range_i{}; + size_t range_j{}; + size_t range_k{}; + size_t range_l{}; + size_t tile_i{}; + size_t tile_j{}; + size_t tile_k{}; + size_t tile_l{}; }; static void compute_4d_tiled( void* context_, size_t linear_index) { - int32_t tile_index_ij, tile_index_kl; + int32_t tile_index_ij = 0, tile_index_kl = 0; const struct compute_4d_tiled_context* context = static_cast(context_); context->tile_range_kl.DivMod( static_cast(linear_index), &tile_index_ij, &tile_index_kl); - int32_t tile_index_i, tile_index_j; + int32_t tile_index_i = 0, tile_index_j = 0; context->tile_range_j.DivMod(tile_index_ij, &tile_index_i, &tile_index_j); - int32_t tile_index_k, tile_index_l; + int32_t tile_index_k = 0, tile_index_l = 0; context->tile_range_l.DivMod(tile_index_kl, &tile_index_k, &tile_index_l); const size_t max_tile_i = context->tile_i; const size_t max_tile_j = context->tile_j; diff --git a/caffe2/utils/threadpool/pthreadpool_impl.cc b/caffe2/utils/threadpool/pthreadpool_impl.cc index ae031ca2ae7..79597b5a245 100644 --- a/caffe2/utils/threadpool/pthreadpool_impl.cc +++ b/caffe2/utils/threadpool/pthreadpool_impl.cc @@ -7,9 +7,7 @@ namespace caffe2 { namespace { static thread_local bool using_new_threadpool{false}; } -WithCastToNewThreadPool::WithCastToNewThreadPool(bool use_new_threadpool) { - use_new_threadpool_ = using_new_threadpool; - using_new_threadpool = use_new_threadpool; +WithCastToNewThreadPool::WithCastToNewThreadPool(bool use_new_threadpool) : use_new_threadpool_(using_new_threadpool) { } WithCastToNewThreadPool::~WithCastToNewThreadPool() { using_new_threadpool = use_new_threadpool_; diff --git a/test/cpp/jit/test_custom_class.cpp b/test/cpp/jit/test_custom_class.cpp index f7fe339b561..42234cddf4e 100644 --- a/test/cpp/jit/test_custom_class.cpp +++ b/test/cpp/jit/test_custom_class.cpp @@ -1,5 +1,6 @@ #include +#include #include #include #include diff --git a/torch/csrc/jit/mobile/compatibility/backport_manager.cpp b/torch/csrc/jit/mobile/compatibility/backport_manager.cpp index 3d71329e612..17145fee78a 100644 --- a/torch/csrc/jit/mobile/compatibility/backport_manager.cpp +++ b/torch/csrc/jit/mobile/compatibility/backport_manager.cpp @@ -2,6 +2,7 @@ #include #include #include +#include #include #include #include diff --git a/torch/csrc/jit/mobile/compatibility/model_compatibility.cpp b/torch/csrc/jit/mobile/compatibility/model_compatibility.cpp index b8b1ca6adc0..d8766023823 100644 --- a/torch/csrc/jit/mobile/compatibility/model_compatibility.cpp +++ b/torch/csrc/jit/mobile/compatibility/model_compatibility.cpp @@ -1,6 +1,7 @@ #include #include #include +#include #include // removed after using simple type_resolver/obj_loader #include #include