[ 
https://issues.apache.org/jira/browse/ARROW-2010?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17659039#comment-17659039
 ] 

Rok Mihevc commented on ARROW-2010:
-----------------------------------

This issue has been migrated to [issue 
#17992|https://github.com/apache/arrow/issues/17992] on GitHub. Please see the 
[migration documentation|https://github.com/apache/arrow/issues/14542] for 
further details.

> [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
>            Assignee: Wes McKinney
>            Priority: Major
>              Labels: ORC, pull-request-available
>             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
(v8.20.10#820010)

Reply via email to