[
https://issues.apache.org/jira/browse/ARROW-13601?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Keith Kraus updated ARROW-13601:
--------------------------------
Description:
Using gcc9 I get the following:
{code}
/home/keith/git/arrow/cpp/src/arrow/testing/json_internal.cc: In function
'arrow::Status arrow::testing::json::{anonymous}::GetField(const Value&,
arrow::ipc::internal::FieldPosition, arrow::ipc::DictionaryMemo*,
std::shared_ptr<arrow::Field>*)':
/home/keith/git/arrow/cpp/src/arrow/testing/json_internal.cc:1128:31: warning:
'is_ordered' may be used uninitialized in this function [-Wmaybe-uninitialized]
1128 | type = ::arrow::dictionary(index_type, type, is_ordered);
| ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
{code}
{code}
In file included from
/home/keith/git/arrow/cpp/src/arrow/util/bit_run_reader.h:26,
from
/home/keith/git/arrow/cpp/src/arrow/util/bit_util_test.cc:45:
/home/keith/git/arrow/cpp/src/arrow/util/bitmap_reader.h: In member function
'void arrow::TestBitmapUInt64Reader::AssertWords(const arrow::Buffer&, int64_t,
int64_t, const std::vector<long unsigned int>&)':
/home/keith/git/arrow/cpp/src/arrow/util/bitmap_reader.h:99:16: warning:
'reader.arrow::internal::BitmapUInt64Reader::carry_bits_' may be used
uninitialized in this function [-Wmaybe-uninitialized]
99 | uint64_t word = carry_bits_ | (next_word << num_carry_bits_);
| ^~~~
/home/keith/git/arrow/cpp/src/arrow/util/bit_util_test.cc:242:34: note:
'reader.arrow::internal::BitmapUInt64Reader::carry_bits_' was declared here
242 | internal::BitmapUInt64Reader reader(buffer.data(), start_offset,
length);
{code}
{code}
In file included from
/home/keith/git/arrow/cpp/src/arrow/util/async_generator.h:30,
from
/home/keith/git/arrow/cpp/src/arrow/util/iterator_test.cc:30:
/home/keith/git/arrow/cpp/src/arrow/util/iterator.h: In member function
'arrow::Result<Control> arrow::TransformIterator<T, V>::Next() [with T =
std::shared_ptr<int>; V = std::shared_ptr<int>]':
/home/keith/git/arrow/cpp/src/arrow/util/iterator.h:288:12: warning:
'*((void*)(& next)+24).std::__shared_count<>::_M_pi' may be used uninitialized
in this function [-Wmaybe-uninitialized]
288 | auto next = *next_res;
| ^~~~
{code}
{code}
/home/keith/git/arrow/cpp/src/arrow/util/utf8_util_test.cc: In function
'arrow::util::UTF8FindIf_Basics_Test::TestBody()::<lambda(const string&,
uint32_t, int64_t, int64_t)>':
/home/keith/git/arrow/cpp/src/arrow/util/utf8_util_test.cc:463:35: warning:
'right' may be used uninitialized in this function [-Wmaybe-uninitialized]
463 | EXPECT_EQ(offset_right, right - begin);
| ^
{code}
{code}
/home/keith/git/arrow/cpp/src/arrow/util/utf8_util_test.cc:462:33: warning:
'left' may be used uninitialized in this function [-Wmaybe-uninitialized]
462 | EXPECT_EQ(offset_left, left - begin);
| ^
{code}
{code}
/home/keith/git/arrow/cpp/src/arrow/util/utf8_util_test.cc: In function
'arrow::util::UTF8FindIf_Basics_Test::TestBody()::<lambda(const string&,
unsigned char, int64_t, int64_t)>':
/home/keith/git/arrow/cpp/src/arrow/util/utf8_util_test.cc:447:35: warning:
'right' may be used uninitialized in this function [-Wmaybe-uninitialized]
447 | EXPECT_EQ(offset_right, right - begin);
| ^
{code}
{code}
/home/keith/git/arrow/cpp/src/arrow/util/utf8_util_test.cc:446:33: warning:
'left' may be used uninitialized in this function [-Wmaybe-uninitialized]
446 | EXPECT_EQ(offset_left, left - begin);
| ^
{code}
{code}
/home/keith/git/arrow/cpp/src/arrow/util/variant_test.cc: In member function
'virtual void arrow::util::{anonymous}::VariantTest_Visit_Test::TestBody()':
/home/keith/git/arrow/cpp/src/arrow/util/variant_test.cc:260:3: warning:
'*((void*)&<anonymous> +8)' may be used uninitialized in this function
[-Wmaybe-uninitialized]
260 | for (auto Assert :
| ^~~
{code}
{code}
/home/keith/git/arrow/cpp/src/arrow/util/variant_test.cc:230:8: warning:
'<anonymous>.arrow::util::{anonymous}::AssertVisitOne<arrow::util::Variant<std::vector<int,
std::allocator<int> >, const char*>, std::vector<int> >::expected_' may be
used uninitialized in this function [-Wmaybe-uninitialized]
230 | struct AssertVisitOne {
| ^~~~~~~~~~~~~~
{code}
{code}
/home/keith/git/arrow/cpp/src/arrow/gpu/cuda_benchmark.cc: In function 'void
arrow::cuda::CudaBufferWriterBenchmark(benchmark::State&, int64_t, int64_t,
int64_t)':
/home/keith/git/arrow/cpp/src/arrow/gpu/cuda_benchmark.cc:42:35: warning:
'manager' may be used uninitialized in this function [-Wmaybe-uninitialized]
42 | ABORT_NOT_OK(manager->GetContext(kGpuNumber).Value(&context));
| ^
{code}
{code}
/home/keith/git/arrow/cpp/src/parquet/arrow/arrow_schema_test.cc: In function
'arrow::Result<std::deque<parquet::internal::LevelInfo> >
parquet::arrow::RootToTreeLeafLevels(const parquet::arrow::SchemaManifest&,
int)':
/home/keith/git/arrow/cpp/src/parquet/arrow/arrow_schema_test.cc:1343:16:
warning: 'field' may be used uninitialized in this function
[-Wmaybe-uninitialized]
1343 | while (field != nullptr) {
| ~~~~~~^~~~~~~~~~
{code}
was:
Using gcc9 I get the following:
{code}
/home/keith/git/arrow/cpp/src/arrow/testing/json_internal.cc: In function
'arrow::Status arrow::testing::json::{anonymous}::GetField(const Value&,
arrow::ipc::internal::FieldPosition, arrow::ipc::DictionaryMemo*,
std::shared_ptr<arrow::Field>*)':
/home/keith/git/arrow/cpp/src/arrow/testing/json_internal.cc:1128:31: warning:
'is_ordered' may be used uninitialized in this function [-Wmaybe-uninitialized]
1128 | type = ::arrow::dictionary(index_type, type, is_ordered);
| ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
{code}
{code}
In file included from
/home/keith/git/arrow/cpp/src/arrow/util/bit_run_reader.h:26,
from
/home/keith/git/arrow/cpp/src/arrow/util/bit_util_test.cc:45:
/home/keith/git/arrow/cpp/src/arrow/util/bitmap_reader.h: In member function
'void arrow::TestBitmapUInt64Reader::AssertWords(const arrow::Buffer&, int64_t,
int64_t, const std::vector<long unsigned int>&)':
/home/keith/git/arrow/cpp/src/arrow/util/bitmap_reader.h:99:16: warning:
'reader.arrow::internal::BitmapUInt64Reader::carry_bits_' may be used
uninitialized in this function [-Wmaybe-uninitialized]
99 | uint64_t word = carry_bits_ | (next_word << num_carry_bits_);
| ^~~~
/home/keith/git/arrow/cpp/src/arrow/util/bit_util_test.cc:242:34: note:
'reader.arrow::internal::BitmapUInt64Reader::carry_bits_' was declared here
242 | internal::BitmapUInt64Reader reader(buffer.data(), start_offset,
length);
{code}
{code}
In file included from
/home/keith/git/arrow/cpp/src/arrow/util/async_generator.h:30,
from
/home/keith/git/arrow/cpp/src/arrow/util/iterator_test.cc:30:
/home/keith/git/arrow/cpp/src/arrow/util/iterator.h: In member function
'arrow::Result<Control> arrow::TransformIterator<T, V>::Next() [with T =
std::shared_ptr<int>; V = std::shared_ptr<int>]':
/home/keith/git/arrow/cpp/src/arrow/util/iterator.h:288:12: warning:
'*((void*)(& next)+24).std::__shared_count<>::_M_pi' may be used uninitialized
in this function [-Wmaybe-uninitialized]
288 | auto next = *next_res;
| ^~~~
{code}
{code}
/home/keith/git/arrow/cpp/src/arrow/util/iterator.h:288:12: warning:
'*((void*)(& next)+16).std::__shared_ptr<int, __gnu_cxx::_S_atomic>::_M_ptr'
may be used uninitialized in this function [-Wmaybe-uninitialized]
[359/671] Building CXX object
src/arrow/util/CMakeFiles/arrow-utility-test.dir/utf8_util_test.cc.o
/home/keith/git/arrow/cpp/src/arrow/util/utf8_util_test.cc: In function
'arrow::util::UTF8FindIf_Basics_Test::TestBody()::<lambda(const string&,
uint32_t, int64_t, int64_t)>':
/home/keith/git/arrow/cpp/src/arrow/util/utf8_util_test.cc:463:35: warning:
'right' may be used uninitialized in this function [-Wmaybe-uninitialized]
463 | EXPECT_EQ(offset_right, right - begin);
| ^
{code}
{code}
/home/keith/git/arrow/cpp/src/arrow/util/utf8_util_test.cc:462:33: warning:
'left' may be used uninitialized in this function [-Wmaybe-uninitialized]
462 | EXPECT_EQ(offset_left, left - begin);
| ^
{code}
{code}
/home/keith/git/arrow/cpp/src/arrow/util/utf8_util_test.cc: In function
'arrow::util::UTF8FindIf_Basics_Test::TestBody()::<lambda(const string&,
unsigned char, int64_t, int64_t)>':
/home/keith/git/arrow/cpp/src/arrow/util/utf8_util_test.cc:447:35: warning:
'right' may be used uninitialized in this function [-Wmaybe-uninitialized]
447 | EXPECT_EQ(offset_right, right - begin);
| ^
{code}
{code}
/home/keith/git/arrow/cpp/src/arrow/util/utf8_util_test.cc:446:33: warning:
'left' may be used uninitialized in this function [-Wmaybe-uninitialized]
446 | EXPECT_EQ(offset_left, left - begin);
| ^
{code}
{code}
/home/keith/git/arrow/cpp/src/arrow/util/variant_test.cc: In member function
'virtual void arrow::util::{anonymous}::VariantTest_Visit_Test::TestBody()':
/home/keith/git/arrow/cpp/src/arrow/util/variant_test.cc:260:3: warning:
'*((void*)&<anonymous> +8)' may be used uninitialized in this function
[-Wmaybe-uninitialized]
260 | for (auto Assert :
| ^~~
{code}
{code}
/home/keith/git/arrow/cpp/src/arrow/util/variant_test.cc:230:8: warning:
'<anonymous>.arrow::util::{anonymous}::AssertVisitOne<arrow::util::Variant<std::vector<int,
std::allocator<int> >, const char*>, std::vector<int> >::expected_' may be
used uninitialized in this function [-Wmaybe-uninitialized]
230 | struct AssertVisitOne {
| ^~~~~~~~~~~~~~
{code}
{code}
/home/keith/git/arrow/cpp/src/arrow/gpu/cuda_benchmark.cc: In function 'void
arrow::cuda::CudaBufferWriterBenchmark(benchmark::State&, int64_t, int64_t,
int64_t)':
/home/keith/git/arrow/cpp/src/arrow/gpu/cuda_benchmark.cc:42:35: warning:
'manager' may be used uninitialized in this function [-Wmaybe-uninitialized]
42 | ABORT_NOT_OK(manager->GetContext(kGpuNumber).Value(&context));
| ^
{code}
{code}
/home/keith/git/arrow/cpp/src/parquet/arrow/arrow_schema_test.cc: In function
'arrow::Result<std::deque<parquet::internal::LevelInfo> >
parquet::arrow::RootToTreeLeafLevels(const parquet::arrow::SchemaManifest&,
int)':
/home/keith/git/arrow/cpp/src/parquet/arrow/arrow_schema_test.cc:1343:16:
warning: 'field' may be used uninitialized in this function
[-Wmaybe-uninitialized]
1343 | while (field != nullptr) {
| ~~~~~~^~~~~~~~~~
{code}
> [C++] Tests maybe uninitialized compiler warnings
> -------------------------------------------------
>
> Key: ARROW-13601
> URL: https://issues.apache.org/jira/browse/ARROW-13601
> Project: Apache Arrow
> Issue Type: Bug
> Components: C++
> Reporter: Keith Kraus
> Priority: Major
>
> Using gcc9 I get the following:
> {code}
> /home/keith/git/arrow/cpp/src/arrow/testing/json_internal.cc: In function
> 'arrow::Status arrow::testing::json::{anonymous}::GetField(const Value&,
> arrow::ipc::internal::FieldPosition, arrow::ipc::DictionaryMemo*,
> std::shared_ptr<arrow::Field>*)':
> /home/keith/git/arrow/cpp/src/arrow/testing/json_internal.cc:1128:31:
> warning: 'is_ordered' may be used uninitialized in this function
> [-Wmaybe-uninitialized]
> 1128 | type = ::arrow::dictionary(index_type, type, is_ordered);
> | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> {code}
> {code}
> In file included from
> /home/keith/git/arrow/cpp/src/arrow/util/bit_run_reader.h:26,
> from
> /home/keith/git/arrow/cpp/src/arrow/util/bit_util_test.cc:45:
> /home/keith/git/arrow/cpp/src/arrow/util/bitmap_reader.h: In member function
> 'void arrow::TestBitmapUInt64Reader::AssertWords(const arrow::Buffer&,
> int64_t, int64_t, const std::vector<long unsigned int>&)':
> /home/keith/git/arrow/cpp/src/arrow/util/bitmap_reader.h:99:16: warning:
> 'reader.arrow::internal::BitmapUInt64Reader::carry_bits_' may be used
> uninitialized in this function [-Wmaybe-uninitialized]
> 99 | uint64_t word = carry_bits_ | (next_word << num_carry_bits_);
> | ^~~~
> /home/keith/git/arrow/cpp/src/arrow/util/bit_util_test.cc:242:34: note:
> 'reader.arrow::internal::BitmapUInt64Reader::carry_bits_' was declared here
> 242 | internal::BitmapUInt64Reader reader(buffer.data(), start_offset,
> length);
> {code}
> {code}
> In file included from
> /home/keith/git/arrow/cpp/src/arrow/util/async_generator.h:30,
> from
> /home/keith/git/arrow/cpp/src/arrow/util/iterator_test.cc:30:
> /home/keith/git/arrow/cpp/src/arrow/util/iterator.h: In member function
> 'arrow::Result<Control> arrow::TransformIterator<T, V>::Next() [with T =
> std::shared_ptr<int>; V = std::shared_ptr<int>]':
> /home/keith/git/arrow/cpp/src/arrow/util/iterator.h:288:12: warning:
> '*((void*)(& next)+24).std::__shared_count<>::_M_pi' may be used
> uninitialized in this function [-Wmaybe-uninitialized]
> 288 | auto next = *next_res;
> | ^~~~
> {code}
> {code}
> /home/keith/git/arrow/cpp/src/arrow/util/utf8_util_test.cc: In function
> 'arrow::util::UTF8FindIf_Basics_Test::TestBody()::<lambda(const string&,
> uint32_t, int64_t, int64_t)>':
> /home/keith/git/arrow/cpp/src/arrow/util/utf8_util_test.cc:463:35: warning:
> 'right' may be used uninitialized in this function [-Wmaybe-uninitialized]
> 463 | EXPECT_EQ(offset_right, right - begin);
> | ^
> {code}
> {code}
> /home/keith/git/arrow/cpp/src/arrow/util/utf8_util_test.cc:462:33: warning:
> 'left' may be used uninitialized in this function [-Wmaybe-uninitialized]
> 462 | EXPECT_EQ(offset_left, left - begin);
> | ^
> {code}
> {code}
> /home/keith/git/arrow/cpp/src/arrow/util/utf8_util_test.cc: In function
> 'arrow::util::UTF8FindIf_Basics_Test::TestBody()::<lambda(const string&,
> unsigned char, int64_t, int64_t)>':
> /home/keith/git/arrow/cpp/src/arrow/util/utf8_util_test.cc:447:35: warning:
> 'right' may be used uninitialized in this function [-Wmaybe-uninitialized]
> 447 | EXPECT_EQ(offset_right, right - begin);
> | ^
> {code}
> {code}
> /home/keith/git/arrow/cpp/src/arrow/util/utf8_util_test.cc:446:33: warning:
> 'left' may be used uninitialized in this function [-Wmaybe-uninitialized]
> 446 | EXPECT_EQ(offset_left, left - begin);
> | ^
> {code}
> {code}
> /home/keith/git/arrow/cpp/src/arrow/util/variant_test.cc: In member function
> 'virtual void arrow::util::{anonymous}::VariantTest_Visit_Test::TestBody()':
> /home/keith/git/arrow/cpp/src/arrow/util/variant_test.cc:260:3: warning:
> '*((void*)&<anonymous> +8)' may be used uninitialized in this function
> [-Wmaybe-uninitialized]
> 260 | for (auto Assert :
> | ^~~
> {code}
> {code}
> /home/keith/git/arrow/cpp/src/arrow/util/variant_test.cc:230:8: warning:
> '<anonymous>.arrow::util::{anonymous}::AssertVisitOne<arrow::util::Variant<std::vector<int,
> std::allocator<int> >, const char*>, std::vector<int> >::expected_' may be
> used uninitialized in this function [-Wmaybe-uninitialized]
> 230 | struct AssertVisitOne {
> | ^~~~~~~~~~~~~~
> {code}
> {code}
> /home/keith/git/arrow/cpp/src/arrow/gpu/cuda_benchmark.cc: In function 'void
> arrow::cuda::CudaBufferWriterBenchmark(benchmark::State&, int64_t, int64_t,
> int64_t)':
> /home/keith/git/arrow/cpp/src/arrow/gpu/cuda_benchmark.cc:42:35: warning:
> 'manager' may be used uninitialized in this function [-Wmaybe-uninitialized]
> 42 | ABORT_NOT_OK(manager->GetContext(kGpuNumber).Value(&context));
> | ^
> {code}
> {code}
> /home/keith/git/arrow/cpp/src/parquet/arrow/arrow_schema_test.cc: In function
> 'arrow::Result<std::deque<parquet::internal::LevelInfo> >
> parquet::arrow::RootToTreeLeafLevels(const parquet::arrow::SchemaManifest&,
> int)':
> /home/keith/git/arrow/cpp/src/parquet/arrow/arrow_schema_test.cc:1343:16:
> warning: 'field' may be used uninitialized in this function
> [-Wmaybe-uninitialized]
> 1343 | while (field != nullptr) {
> | ~~~~~~^~~~~~~~~~
> {code}
--
This message was sent by Atlassian Jira
(v8.3.4#803005)