Antoine Pitrou created ARROW-3251: ------------------------------------- Summary: [C++] Conversion warnings in cast.cc Key: ARROW-3251 URL: https://issues.apache.org/jira/browse/ARROW-3251 Project: Apache Arrow Issue Type: Bug Components: C++ Reporter: Antoine Pitrou
This is with gcc 7.3.0 and {{-Wconversion}}. {code} ../src/arrow/compute/kernels/cast.cc: In instantiation of ‘void arrow::compute::CastFunctor<O, I, typename std::enable_if<arrow::compute::is_float_truncate<O, I>::value>::type>::operator()(arrow::compute::FunctionContext*, const arrow::compute::CastOptions&, const arrow::ArrayData&, arrow::ArrayData*) [with O = arrow::Int64Type; I = arrow::DoubleType; typename std::enable_if<arrow::compute::is_float_truncate<O, I>::value>::type = void]’: ../src/arrow/compute/kernels/cast.cc:1105:1: required from here ../src/arrow/compute/kernels/cast.cc:291:45: warning: conversion to ‘in_type {aka double}’ from ‘long int’ may alter its value [-Wconversion] if (ARROW_PREDICT_FALSE(out_value != *in_data)) { ~~~~~~~~~~^~~~~ ../src/arrow/util/macros.h:37:50: note: in definition of macro ‘ARROW_PREDICT_FALSE’ #define ARROW_PREDICT_FALSE(x) (__builtin_expect(x, 0)) ^ ../src/arrow/compute/kernels/cast.cc:301:45: warning: conversion to ‘in_type {aka double}’ from ‘long int’ may alter its value [-Wconversion] if (ARROW_PREDICT_FALSE(out_value != *in_data)) { ~~~~~~~~~~^~~~~ ../src/arrow/util/macros.h:37:50: note: in definition of macro ‘ARROW_PREDICT_FALSE’ #define ARROW_PREDICT_FALSE(x) (__builtin_expect(x, 0)) {code} -- This message was sent by Atlassian JIRA (v7.6.3#76005)