Wes McKinney created ARROW-2010:
-----------------------------------
Summary: [C++] Compiler warnings with CHECKIN warning level in ORC
adapter
Key: ARROW-2010
URL: https://issues.apache.org/jira/browse/ARROW-2010
Project: Apache Arrow
Issue Type: Bug
Components: C++
Reporter: Wes McKinney
Fix For: 0.9.0
I am encountering this locally with clang 4.0 and BUILD_WARNING_LEVEL=CHECKIN.
We should investigate why these aren't showing up in our CI builds
{code}
../src/arrow/adapters/orc/adapter.cc:138:38: error: implicit conversion loses
integer precision: 'uint64_t' (aka 'unsigned long') to 'int32_t' (aka 'int')
[-Werror,-Wshorten-64-to-32]
*out = fixed_size_binary(type->getMaximumLength());
~~~~~~~~~~~~~~~~~ ~~~~~~^~~~~~~~~~~~~~~~~~
../src/arrow/adapters/orc/adapter.cc:151:30: error: implicit conversion loses
integer precision: 'uint64_t' (aka 'unsigned long') to 'int32_t' (aka 'int')
[-Werror,-Wshorten-64-to-32]
*out = decimal(type->getPrecision(), type->getScale());
~~~~~~~ ~~~~~~^~~~~~~~~~~~~~
../src/arrow/adapters/orc/adapter.cc:151:52: error: implicit conversion loses
integer precision: 'uint64_t' (aka 'unsigned long') to 'int32_t' (aka 'int')
[-Werror,-Wshorten-64-to-32]
*out = decimal(type->getPrecision(), type->getScale());
~~~~~~~ ~~~~~~^~~~~~~~~~
../src/arrow/adapters/orc/adapter.cc:176:24: error: implicit conversion loses
integer precision: 'uint64_t' (aka 'unsigned long') to 'int'
[-Werror,-Wshorten-64-to-32]
int size = type->getSubtypeCount();
~~~~ ~~~~~~^~~~~~~~~~~~~~~~~
../src/arrow/adapters/orc/adapter.cc:188:24: error: implicit conversion loses
integer precision: 'uint64_t' (aka 'unsigned long') to 'int'
[-Werror,-Wshorten-64-to-32]
int size = type->getSubtypeCount();
~~~~ ~~~~~~^~~~~~~~~~~~~~~~~
../src/arrow/adapters/orc/adapter.cc:262:21: error: implicit conversion loses
integer precision: 'uint64_t' (aka 'unsigned long') to 'int'
[-Werror,-Wshorten-64-to-32]
int size = type.getSubtypeCount();
~~~~ ~~~~~^~~~~~~~~~~~~~~~~
../src/arrow/adapters/orc/adapter.cc:452:18: error: implicit conversion loses
integer precision: 'int64_t' (aka 'long') to 'int' [-Werror,-Wshorten-64-to-32]
for (int i = offset; i < length + offset; i++) {
~ ^~~~~~
../src/arrow/adapters/orc/adapter.cc:477:18: error: implicit conversion loses
integer precision: 'int64_t' (aka 'long') to 'int' [-Werror,-Wshorten-64-to-32]
for (int i = offset; i < length + offset; i++) {
~ ^~~~~~
../src/arrow/adapters/orc/adapter.cc:543:26: error: implicit conversion loses
integer precision: 'int64_t' (aka 'long') to 'int' [-Werror,-Wshorten-64-to-32]
int start = builder->length();
~~~~~ ~~~~~~~~~^~~~~~~~
../src/arrow/adapters/orc/adapter.cc:572:26: error: implicit conversion loses
integer precision: 'int64_t' (aka 'long') to 'int' [-Werror,-Wshorten-64-to-32]
int start = builder->length();
~~~~~ ~~~~~~~~~^~~~~~~~
../src/arrow/adapters/orc/adapter.cc:599:18: error: implicit conversion loses
integer precision: 'int64_t' (aka 'long') to 'int' [-Werror,-Wshorten-64-to-32]
for (int i = offset; i < length + offset; i++) {
~ ^~~~~~
../src/arrow/adapters/orc/adapter.cc:615:18: error: implicit conversion loses
integer precision: 'int64_t' (aka 'long') to 'int' [-Werror,-Wshorten-64-to-32]
for (int i = offset; i < length + offset; i++) {
~ ^~~~~~
../src/arrow/adapters/orc/adapter.cc:632:20: error: implicit conversion loses
integer precision: 'int64_t' (aka 'long') to 'int' [-Werror,-Wshorten-64-to-32]
for (int i = offset; i < length + offset; i++) {
~ ^~~~~~
../src/arrow/adapters/orc/adapter.cc:642:20: error: implicit conversion loses
integer precision: 'int64_t' (aka 'long') to 'int' [-Werror,-Wshorten-64-to-32]
for (int i = offset; i < length + offset; i++) {
~ ^~~~~~
../src/arrow/adapters/orc/adapter.cc:519:26: error: implicit conversion loses
integer precision: 'int64_t' (aka 'long') to 'int' [-Werror,-Wshorten-64-to-32]
int start = builder->length();
~~~~~ ~~~~~~~~~^~~~~~~~
../src/arrow/adapters/orc/adapter.cc:389:16: note: in instantiation of function
template specialization
'arrow::adapters::orc::ORCFileReader::Impl::AppendNumericBatchCast<arrow::NumericBuilder<arrow::Int32Type>,
int, orc::LongVectorBatch, long>' requested here
return AppendNumericBatchCast<Int32Builder, int32_t,
liborc::LongVectorBatch,
^
../src/arrow/adapters/orc/adapter.cc:519:26: error: implicit conversion loses
integer precision: 'int64_t' (aka 'long') to 'int' [-Werror,-Wshorten-64-to-32]
int start = builder->length();
~~~~~ ~~~~~~~~~^~~~~~~~
../src/arrow/adapters/orc/adapter.cc:392:16: note: in instantiation of function
template specialization
'arrow::adapters::orc::ORCFileReader::Impl::AppendNumericBatchCast<arrow::NumericBuilder<arrow::Int16Type>,
short, orc::LongVectorBatch, long>' requested here
return AppendNumericBatchCast<Int16Builder, int16_t,
liborc::LongVectorBatch,
^
../src/arrow/adapters/orc/adapter.cc:519:26: error: implicit conversion loses
integer precision: 'int64_t' (aka 'long') to 'int' [-Werror,-Wshorten-64-to-32]
int start = builder->length();
~~~~~ ~~~~~~~~~^~~~~~~~
../src/arrow/adapters/orc/adapter.cc:395:16: note: in instantiation of function
template specialization
'arrow::adapters::orc::ORCFileReader::Impl::AppendNumericBatchCast<arrow::NumericBuilder<arrow::Int8Type>,
signed char, orc::LongVectorBatch, long>' requested here
return AppendNumericBatchCast<Int8Builder, int8_t,
liborc::LongVectorBatch,
^
../src/arrow/adapters/orc/adapter.cc:519:26: error: implicit conversion loses
integer precision: 'int64_t' (aka 'long') to 'int' [-Werror,-Wshorten-64-to-32]
int start = builder->length();
~~~~~ ~~~~~~~~~^~~~~~~~
../src/arrow/adapters/orc/adapter.cc:401:16: note: in instantiation of function
template specialization
'arrow::adapters::orc::ORCFileReader::Impl::AppendNumericBatchCast<arrow::NumericBuilder<arrow::FloatType>,
float, orc::DoubleVectorBatch, double>' requested here
return AppendNumericBatchCast<FloatBuilder, float,
liborc::DoubleVectorBatch,
^
../src/arrow/adapters/orc/adapter.cc:599:18: error: implicit conversion loses
integer precision: 'int64_t' (aka 'long') to 'int' [-Werror,-Wshorten-64-to-32]
for (int i = offset; i < length + offset; i++) {
~ ^~~~~~
../src/arrow/adapters/orc/adapter.cc:407:16: note: in instantiation of function
template specialization
'arrow::adapters::orc::ORCFileReader::Impl::AppendBinaryBatch<arrow::StringBuilder>'
requested here
return AppendBinaryBatch<StringBuilder>(batch, offset, length, builder);
^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
20 errors generated.
{code}
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)