Commit 79d27770 authored by Tsukasa OMOTO's avatar Tsukasa OMOTO Committed by Guolin Ke
Browse files

Shut up warnings (#1363)

* Shut up warnings

- warning: 'void* memset(void*, int, size_t)' clearing an object of non-trivial type 'struct LightGBM::HistogramBinEntry'; use assignment or value-initialization instead [-Wclass-memaccess]
- warning: 'void* memcpy(void*, const void*, size_t)' writing to an object of type 'class std::tuple<int, double, double>' with no trivial copy-assignment; use copy-assignment or copy-initialization instead [-Wclass-memaccess]

* void*
parent 41152eab
...@@ -658,7 +658,7 @@ void Dataset::ConstructHistograms(const std::vector<int8_t>& is_feature_used, ...@@ -658,7 +658,7 @@ void Dataset::ConstructHistograms(const std::vector<int8_t>& is_feature_used,
// feature is not used // feature is not used
auto data_ptr = hist_data + group_bin_boundaries_[group]; auto data_ptr = hist_data + group_bin_boundaries_[group];
const int num_bin = feature_groups_[group]->num_total_bin_; const int num_bin = feature_groups_[group]->num_total_bin_;
std::memset(data_ptr + 1, 0, (num_bin - 1) * sizeof(HistogramBinEntry)); std::memset((void*)(data_ptr + 1), 0, (num_bin - 1) * sizeof(HistogramBinEntry));
// construct histograms for smaller leaf // construct histograms for smaller leaf
if (ordered_bins[group] == nullptr) { if (ordered_bins[group] == nullptr) {
// if not use ordered bin // if not use ordered bin
...@@ -687,7 +687,7 @@ void Dataset::ConstructHistograms(const std::vector<int8_t>& is_feature_used, ...@@ -687,7 +687,7 @@ void Dataset::ConstructHistograms(const std::vector<int8_t>& is_feature_used,
// feature is not used // feature is not used
auto data_ptr = hist_data + group_bin_boundaries_[group]; auto data_ptr = hist_data + group_bin_boundaries_[group];
const int num_bin = feature_groups_[group]->num_total_bin_; const int num_bin = feature_groups_[group]->num_total_bin_;
std::memset(data_ptr + 1, 0, (num_bin - 1) * sizeof(HistogramBinEntry)); std::memset((void*)(data_ptr + 1), 0, (num_bin - 1) * sizeof(HistogramBinEntry));
// construct histograms for smaller leaf // construct histograms for smaller leaf
if (ordered_bins[group] == nullptr) { if (ordered_bins[group] == nullptr) {
// if not use ordered bin // if not use ordered bin
...@@ -720,7 +720,7 @@ void Dataset::ConstructHistograms(const std::vector<int8_t>& is_feature_used, ...@@ -720,7 +720,7 @@ void Dataset::ConstructHistograms(const std::vector<int8_t>& is_feature_used,
// feature is not used // feature is not used
auto data_ptr = hist_data + group_bin_boundaries_[group]; auto data_ptr = hist_data + group_bin_boundaries_[group];
const int num_bin = feature_groups_[group]->num_total_bin_; const int num_bin = feature_groups_[group]->num_total_bin_;
std::memset(data_ptr + 1, 0, (num_bin - 1) * sizeof(HistogramBinEntry)); std::memset((void*)(data_ptr + 1), 0, (num_bin - 1) * sizeof(HistogramBinEntry));
// construct histograms for smaller leaf // construct histograms for smaller leaf
if (ordered_bins[group] == nullptr) { if (ordered_bins[group] == nullptr) {
// if not use ordered bin // if not use ordered bin
...@@ -748,7 +748,7 @@ void Dataset::ConstructHistograms(const std::vector<int8_t>& is_feature_used, ...@@ -748,7 +748,7 @@ void Dataset::ConstructHistograms(const std::vector<int8_t>& is_feature_used,
// feature is not used // feature is not used
auto data_ptr = hist_data + group_bin_boundaries_[group]; auto data_ptr = hist_data + group_bin_boundaries_[group];
const int num_bin = feature_groups_[group]->num_total_bin_; const int num_bin = feature_groups_[group]->num_total_bin_;
std::memset(data_ptr + 1, 0, (num_bin - 1) * sizeof(HistogramBinEntry)); std::memset((void*)(data_ptr + 1), 0, (num_bin - 1) * sizeof(HistogramBinEntry));
// construct histograms for smaller leaf // construct histograms for smaller leaf
if (ordered_bins[group] == nullptr) { if (ordered_bins[group] == nullptr) {
// if not use ordered bin // if not use ordered bin
......
...@@ -136,7 +136,7 @@ void DataParallelTreeLearner<TREELEARNER_T>::BeforeTrain() { ...@@ -136,7 +136,7 @@ void DataParallelTreeLearner<TREELEARNER_T>::BeforeTrain() {
} }
}); });
// copy back // copy back
std::memcpy(&data, output_buffer_.data(), size); std::memcpy((void*)&data, output_buffer_.data(), size);
// set global sumup info // set global sumup info
this->smaller_leaf_splits_->Init(std::get<1>(data), std::get<2>(data)); this->smaller_leaf_splits_->Init(std::get<1>(data), std::get<2>(data));
// init global data count in leaf // init global data count in leaf
......
...@@ -131,7 +131,7 @@ void VotingParallelTreeLearner<TREELEARNER_T>::BeforeTrain() { ...@@ -131,7 +131,7 @@ void VotingParallelTreeLearner<TREELEARNER_T>::BeforeTrain() {
} }
}); });
std::memcpy(&data, output_buffer_.data(), size); std::memcpy((void*)&data, output_buffer_.data(), size);
// set global sumup info // set global sumup info
smaller_leaf_splits_global_->Init(std::get<1>(data), std::get<2>(data)); smaller_leaf_splits_global_->Init(std::get<1>(data), std::get<2>(data));
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment