Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions ci/appveyor-cpp-build-mingw.bat
Original file line number Diff line number Diff line change
Expand Up @@ -17,8 +17,8 @@

@echo on

set CMAKE_BUILD_TYPE=debug
set MESON_BUILD_TYPE=debug
set CMAKE_BUILD_TYPE=release
set MESON_BUILD_TYPE=release

set INSTALL_DIR=%HOMEDRIVE%%HOMEPATH%\install
set PATH=%INSTALL_DIR%\bin;%PATH%
Expand Down
14 changes: 7 additions & 7 deletions cpp/src/arrow/type_traits.h
Original file line number Diff line number Diff line change
Expand Up @@ -75,7 +75,7 @@ struct CTypeTraits<bool> : public TypeTraits<BooleanType> {
using TensorType = ArrowTensorType; \
using CType = CType_; \
static constexpr int64_t bytes_required(int64_t elements) { \
return elements * sizeof(CType_); \
return elements * static_cast<int64_t>(sizeof(CType_)); \
} \
constexpr static bool is_parameter_free = true; \
static inline std::shared_ptr<DataType> type_singleton() { return SingletonFn(); } \
Expand Down Expand Up @@ -113,7 +113,7 @@ struct TypeTraits<Date64Type> {
using ScalarType = Date64Scalar;

static constexpr int64_t bytes_required(int64_t elements) {
return elements * sizeof(int64_t);
return elements * static_cast<int64_t>(sizeof(int64_t));
}
constexpr static bool is_parameter_free = true;
static inline std::shared_ptr<DataType> type_singleton() { return date64(); }
Expand All @@ -126,7 +126,7 @@ struct TypeTraits<Date32Type> {
using ScalarType = Date32Scalar;

static constexpr int64_t bytes_required(int64_t elements) {
return elements * sizeof(int32_t);
return elements * static_cast<int64_t>(sizeof(int32_t));
}
constexpr static bool is_parameter_free = true;
static inline std::shared_ptr<DataType> type_singleton() { return date32(); }
Expand All @@ -139,7 +139,7 @@ struct TypeTraits<TimestampType> {
using ScalarType = TimestampScalar;

static constexpr int64_t bytes_required(int64_t elements) {
return elements * sizeof(int64_t);
return elements * static_cast<int64_t>(sizeof(int64_t));
}
constexpr static bool is_parameter_free = false;
};
Expand All @@ -151,7 +151,7 @@ struct TypeTraits<Time32Type> {
using ScalarType = Time32Scalar;

static constexpr int64_t bytes_required(int64_t elements) {
return elements * sizeof(int32_t);
return elements * static_cast<int64_t>(sizeof(int32_t));
}
constexpr static bool is_parameter_free = false;
};
Expand All @@ -163,7 +163,7 @@ struct TypeTraits<Time64Type> {
using ScalarType = Time64Scalar;

static constexpr int64_t bytes_required(int64_t elements) {
return elements * sizeof(int64_t);
return elements * static_cast<int64_t>(sizeof(int64_t));
}
constexpr static bool is_parameter_free = false;
};
Expand All @@ -176,7 +176,7 @@ struct TypeTraits<HalfFloatType> {
using TensorType = HalfFloatTensor;

static constexpr int64_t bytes_required(int64_t elements) {
return elements * sizeof(uint16_t);
return elements * static_cast<int64_t>(sizeof(uint16_t));
}
constexpr static bool is_parameter_free = true;
static inline std::shared_ptr<DataType> type_singleton() { return float16(); }
Expand Down
19 changes: 12 additions & 7 deletions cpp/src/arrow/util/compression_brotli.cc
Original file line number Diff line number Diff line change
Expand Up @@ -204,9 +204,11 @@ Status BrotliCodec::Decompress(int64_t input_len, const uint8_t* input,
Status BrotliCodec::Decompress(int64_t input_len, const uint8_t* input,
int64_t output_buffer_len, uint8_t* output_buffer,
int64_t* output_len) {
std::size_t output_size = output_buffer_len;
if (BrotliDecoderDecompress(input_len, input, &output_size, output_buffer) !=
BROTLI_DECODER_RESULT_SUCCESS) {
DCHECK_GE(input_len, 0);
DCHECK_GE(output_buffer_len, 0);
std::size_t output_size = static_cast<size_t>(output_buffer_len);
if (BrotliDecoderDecompress(static_cast<size_t>(input_len), input, &output_size,
output_buffer) != BROTLI_DECODER_RESULT_SUCCESS) {
return Status::IOError("Corrupt brotli compressed data.");
}
if (output_len) {
Expand All @@ -217,16 +219,19 @@ Status BrotliCodec::Decompress(int64_t input_len, const uint8_t* input,

int64_t BrotliCodec::MaxCompressedLen(int64_t input_len,
const uint8_t* ARROW_ARG_UNUSED(input)) {
return BrotliEncoderMaxCompressedSize(input_len);
DCHECK_GE(input_len, 0);
return BrotliEncoderMaxCompressedSize(static_cast<size_t>(input_len));
}

Status BrotliCodec::Compress(int64_t input_len, const uint8_t* input,
int64_t output_buffer_len, uint8_t* output_buffer,
int64_t* output_len) {
std::size_t output_size = output_buffer_len;
DCHECK_GE(input_len, 0);
DCHECK_GE(output_buffer_len, 0);
std::size_t output_size = static_cast<size_t>(output_buffer_len);
if (BrotliEncoderCompress(kBrotliDefaultCompressionLevel, BROTLI_DEFAULT_WINDOW,
BROTLI_DEFAULT_MODE, input_len, input, &output_size,
output_buffer) == BROTLI_FALSE) {
BROTLI_DEFAULT_MODE, static_cast<size_t>(input_len), input,
&output_size, output_buffer) == BROTLI_FALSE) {
return Status::IOError("Brotli compression failure.");
}
*output_len = output_size;
Expand Down
4 changes: 3 additions & 1 deletion cpp/src/arrow/util/compression_snappy.cc
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@
#include <snappy.h>

#include "arrow/status.h"
#include "arrow/util/logging.h"
#include "arrow/util/macros.h"

using std::size_t;
Expand Down Expand Up @@ -73,7 +74,8 @@ Status SnappyCodec::Decompress(int64_t input_len, const uint8_t* input,

int64_t SnappyCodec::MaxCompressedLen(int64_t input_len,
const uint8_t* ARROW_ARG_UNUSED(input)) {
return snappy::MaxCompressedLength(input_len);
DCHECK_GE(input_len, 0);
return snappy::MaxCompressedLength(static_cast<size_t>(input_len));
}

Status SnappyCodec::Compress(int64_t input_len, const uint8_t* input,
Expand Down
3 changes: 2 additions & 1 deletion cpp/src/arrow/util/compression_zstd.cc
Original file line number Diff line number Diff line change
Expand Up @@ -229,7 +229,8 @@ Status ZSTDCodec::Decompress(int64_t input_len, const uint8_t* input,

int64_t ZSTDCodec::MaxCompressedLen(int64_t input_len,
const uint8_t* ARROW_ARG_UNUSED(input)) {
return ZSTD_compressBound(input_len);
DCHECK_GE(input_len, 0);
return ZSTD_compressBound(static_cast<size_t>(input_len));
}

Status ZSTDCodec::Compress(int64_t input_len, const uint8_t* input,
Expand Down