* installing *source* package ‘nanoparquet’ ... ** this is package ‘nanoparquet’ version ‘0.5.1’ ** using staged installation ** libs using C compiler: ‘gcc-15 (Debian 15.2.0-16) 15.2.0’ using C++ compiler: ‘g++-15 (Debian 15.2.0-16) 15.2.0’ g++-15 -std=gnu++20 -I"/home/hornik/tmp/R-d-gcc-15/include" -DNDEBUG -Ithrift -I. -Izstd/include -I/usr/local/include -DUSE_TYPE_CHECKING_STRICT -D_FORTIFY_SOURCE=3 -DR_NO_REMAP -fpic -g -O2 -Wall -pedantic -mtune=native -c lib/ParquetReader.cpp -o lib/ParquetReader.o In file included from lib/ParquetReader.h:5, from lib/ParquetReader.cpp:6: lib/bytebuffer.h: In member function ‘BufferGuard BufferManager::claim()’: lib/bytebuffer.h:106:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 106 | for (auto i = 0; i < bufs.size(); i++) { | ~~^~~~~~~~~~~~~ lib/ParquetReader.cpp: In member function ‘void nanoparquet::ParquetReader::init_file_on_disk(bool)’: lib/ParquetReader.cpp:124:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 124 | for (int i = 0; i < file_meta_data_.schema.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ lib/ParquetReader.cpp: In member function ‘void nanoparquet::ParquetReader::check_meta_data()’: lib/ParquetReader.cpp:179:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 179 | for (int i = 1; i < file_meta_data_.schema.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ lib/ParquetReader.cpp:198:19: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 198 | if (i + 2 >= file_meta_data_.schema.size()) { | ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ lib/ParquetReader.cpp: In function ‘void extract_snappy(uint8_t*, int32_t, ByteBuffer&, int32_t, int32_t)’: lib/ParquetReader.cpp:409:25: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘long unsigned int’} and ‘int32_t’ {aka ‘int’} [-Wsign-compare] 409 | if (dec_size + skip != unc_len) break; | ~~~~~~~~~~~~~~~~^~~~~~~~~~ lib/ParquetReader.cpp: In member function ‘void nanoparquet::ParquetReader::update_data_page_size(nanoparquet::DataPage&, uint8_t*, int32_t)’: lib/ParquetReader.cpp:605:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 605 | for (auto i = 0; i < dp.prelen.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~ lib/ParquetReader.cpp: In member function ‘void nanoparquet::ParquetReader::unpack_plain_boolean(uint32_t*, uint8_t*, uint32_t)’: lib/ParquetReader.cpp:1049:25: warning: comparison of integer expressions of different signedness: ‘int32_t’ {aka ‘int’} and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 1049 | for (int32_t i = 0; i < num_values; i++) { | ~~^~~~~~~~~~~~ lib/ParquetReader.cpp: In member function ‘void nanoparquet::ParquetReader::read_chunk(int64_t, int64_t, int8_t*)’: lib/ParquetReader.cpp:1143:12: warning: comparison of integer expressions of different signedness: ‘int64_t’ {aka ‘long int’} and ‘long unsigned int’ [-Wsign-compare] 1143 | if (size > file_size - offset) { | ~~~~~^~~~~~~~~~~~~~~~~~~~ In file included from lib/ParquetReader.cpp:9: lib/DbpDecoder.h: In instantiation of ‘uint8_t* DbpDecoder::decode(T*) [with T = int; Tunsigned = unsigned int; uint8_t = unsigned char]’: lib/ParquetReader.cpp:599:34: required from here 599 | uint8_t *sufpos = predec.decode(dp.prelen.data()); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~ lib/DbpDecoder.h:68:38: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 68 | for (auto i = 0; todo > 0 && i < mini_blocks_per_block; i++) { | ~~^~~~~~~~~~~~~~~~~~~~~~~ lib/DbpDecoder.h:84:28: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint64_t’ {aka ‘long unsigned int’} [-Wsign-compare] 84 | for (auto i = 0; i < mb_vals; i++) { | ~~^~~~~~~~~ In file included from lib/ParquetReader.cpp:8: lib/RleBpDecoder.h: In instantiation of ‘uint32_t RleBpDecoder::GetBatchCount(T*, int) [with T = unsigned char; uint32_t = unsigned int]’: lib/ParquetReader.cpp:648:31: required from here 648 | dec.GetBatchCount( | ~~~~~~~~~~~~~~~~~~~~~~~~~~^ 649 | (uint8_t*) rep_levels.ptr, | ~~~~~~~~~~~~~~~~~~~~~~~~~~ 650 | dp.num_values | ~~~~~~~~~~~~~ 651 | ); | ~ lib/RleBpDecoder.h:61:24: warning: comparison of integer expressions of different signedness: ‘uint32_t’ {aka ‘unsigned int’} and ‘int’ [-Wsign-compare] 61 | while (values_read < batch_size) { | ~~~~~~~~~~~~^~~~~~~~~~~~ lib/RleBpDecoder.h: In instantiation of ‘int RleBpDecoder::GetBatch(T*, int) [with T = unsigned char]’: lib/ParquetReader.cpp:750:28: required from here 750 | dec.GetBatch(dp.present, dp.num_values); | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ lib/RleBpDecoder.h:30:24: warning: comparison of integer expressions of different signedness: ‘uint32_t’ {aka ‘unsigned int’} and ‘int’ [-Wsign-compare] 30 | while (values_read < batch_size) { | ~~~~~~~~~~~~^~~~~~~~~~~~ lib/RleBpDecoder.h: In instantiation of ‘int RleBpDecoder::GetBatch(T*, int) [with T = unsigned int]’: lib/ParquetReader.cpp:814:27: required from here 814 | dec.GetBatch((uint32_t*) dp.data, dp.num_present); | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ lib/RleBpDecoder.h:30:24: warning: comparison of integer expressions of different signedness: ‘uint32_t’ {aka ‘unsigned int’} and ‘int’ [-Wsign-compare] 30 | while (values_read < batch_size) { | ~~~~~~~~~~~~^~~~~~~~~~~~ lib/DbpDecoder.h: In instantiation of ‘uint8_t* DbpDecoder::decode(T*) [with T = long int; Tunsigned = long unsigned int; uint8_t = unsigned char]’: lib/ParquetReader.cpp:899:15: required from here 899 | dec.decode((int64_t*) dp.data); | ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~ lib/DbpDecoder.h:68:38: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 68 | for (auto i = 0; todo > 0 && i < mini_blocks_per_block; i++) { | ~~^~~~~~~~~~~~~~~~~~~~~~~ lib/DbpDecoder.h:84:28: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint64_t’ {aka ‘long unsigned int’} [-Wsign-compare] 84 | for (auto i = 0; i < mb_vals; i++) { | ~~^~~~~~~~~ In file included from lib/DbpDecoder.h:6: lib/decode-utils.h: In instantiation of ‘void unpack_bits(uint8_t*, uint64_t, uint8_t, T*, uint64_t) [with T = unsigned int; uint8_t = unsigned char; uint64_t = long unsigned int]’: lib/DbpDecoder.h:77:31: required from ‘uint8_t* DbpDecoder::decode(T*) [with T = int; Tunsigned = unsigned int; uint8_t = unsigned char]’ 77 | unpack_bits( | ~~~~~~~~~~~~~~~~~~~~~~^ 78 | buf->start, | ~~~~~~~~~~~ 79 | mb_len, | ~~~~~~~ 80 | bw, | ~~~ 81 | (Tunsigned*) values, | ~~~~~~~~~~~~~~~~~~~~ 82 | mb_vals | ~~~~~~~ 83 | ); | ~ lib/ParquetReader.cpp:599:34: required from here 599 | uint8_t *sufpos = predec.decode(dp.prelen.data()); | ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~ lib/decode-utils.h:58:21: warning: comparison of integer expressions of different signedness: ‘uint64_t’ {aka ‘long unsigned int’} and ‘int’ [-Wsign-compare] 58 | while (num_values > output_group_size) { | ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~ lib/decode-utils.h: In instantiation of ‘void unpack_bits(uint8_t*, uint64_t, uint8_t, T*, uint64_t) [with T = long unsigned int; uint8_t = unsigned char; uint64_t = long unsigned int]’: lib/DbpDecoder.h:77:31: required from ‘uint8_t* DbpDecoder::decode(T*) [with T = long int; Tunsigned = long unsigned int; uint8_t = unsigned char]’ 77 | unpack_bits( | ~~~~~~~~~~~~~~~~~~~~~~^ 78 | buf->start, | ~~~~~~~~~~~ 79 | mb_len, | ~~~~~~~ 80 | bw, | ~~~ 81 | (Tunsigned*) values, | ~~~~~~~~~~~~~~~~~~~~ 82 | mb_vals | ~~~~~~~ 83 | ); | ~ lib/ParquetReader.cpp:899:15: required from here 899 | dec.decode((int64_t*) dp.data); | ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~ lib/decode-utils.h:58:21: warning: comparison of integer expressions of different signedness: ‘uint64_t’ {aka ‘long unsigned int’} and ‘int’ [-Wsign-compare] 58 | while (num_values > output_group_size) { | ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~ g++-15 -std=gnu++20 -I"/home/hornik/tmp/R-d-gcc-15/include" -DNDEBUG -Ithrift -I. -Izstd/include -I/usr/local/include -DUSE_TYPE_CHECKING_STRICT -D_FORTIFY_SOURCE=3 -DR_NO_REMAP -fpic -g -O2 -Wall -pedantic -mtune=native -c RParquetReader.cpp -o RParquetReader.o In file included from lib/ParquetReader.h:5, from RParquetReader.h:5, from RParquetReader.cpp:3: lib/bytebuffer.h: In member function ‘BufferGuard BufferManager::claim()’: lib/bytebuffer.h:106:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 106 | for (auto i = 0; i < bufs.size(); i++) { | ~~^~~~~~~~~~~~~ RParquetReader.cpp: In function ‘uint32_t as_uint(float)’: RParquetReader.cpp:17:11: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 17 | return *(uint32_t*) &x; | ^~~~~~~~~~~~~~ RParquetReader.cpp: In function ‘float as_float(uint32_t)’: RParquetReader.cpp:21:11: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 21 | return *(float*) &x; | ^~~~~~~~~~~ RParquetReader.cpp: In member function ‘void RParquetReader::init(RParquetFilter&)’: RParquetReader.cpp:103:45: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 103 | for (auto i = 0, idx = 0, meta_idx = 0; i < metadata.num_cols; i++) { | ~~^~~~~~~~~~~~~~~~~~~ RParquetReader.cpp: In member function ‘void RParquetReader::create_metadata(RParquetFilter&)’: RParquetReader.cpp:174:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 174 | for (auto i = 0; i < fmt.row_groups.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~~~~ RParquetReader.cpp:192:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 192 | for (auto i = 0; i < filter.row_groups.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~ RParquetReader.cpp:205:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 205 | for (auto i = 0; i < filter.columns.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~~~~ RParquetReader.cpp:214:33: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 214 | for (auto i = 1, idx = 0; i < metadata.num_cols; i++) { | ~~^~~~~~~~~~~~~~~~~~~ RParquetReader.cpp:225:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 225 | for (auto i = 0; i < metadata.num_cols; i++) { | ~~^~~~~~~~~~~~~~~~~~~ RParquetReader.cpp: In member function ‘void RParquetReader::read_columns()’: RParquetReader.cpp:254:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 254 | for (auto i = 0; i < filter.columns.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~~~~ RParquetReader.cpp:258:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 258 | for (auto i = 1; i < metadata.num_cols; i++) { | ~~^~~~~~~~~~~~~~~~~~~ RParquetReader.cpp: In member function ‘virtual void RParquetReader::alloc_data_page(nanoparquet::DataPage&)’: RParquetReader.cpp:574:38: warning: comparison of integer expressions of different signedness: ‘int’ and ‘unsigned int’ [-Wsign-compare] 574 | for (auto prev_rg = 0; prev_rg < rg; prev_rg++) { | ~~~~~~~~^~~~ RParquetReader.cpp:591:38: warning: comparison of integer expressions of different signedness: ‘int’ and ‘unsigned int’ [-Wsign-compare] 591 | for (auto prev_rg = 0; prev_rg < rg; prev_rg++) { | ~~~~~~~~^~~~ RParquetReader.cpp: In function ‘void convert_column_to_r_dicts(postprocess*, uint32_t)’: RParquetReader.cpp:627:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 627 | for (auto rg = 0; rg < pp->metadata.num_row_groups; rg++) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ RParquetReader.cpp: In function ‘void convert_column_to_r_dicts_na(postprocess*, uint32_t)’: RParquetReader.cpp:681:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 681 | for (auto rg = 0; rg < pp->metadata.num_row_groups; rg++) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ RParquetReader.cpp: In function ‘void convert_column_to_r_int64_dict_nomiss(postprocess*, uint32_t)’: RParquetReader.cpp:869:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 869 | for (auto rg = 0; rg < pp->metadata.num_row_groups; rg++) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ RParquetReader.cpp: In function ‘void convert_column_to_r_int64_nodict_miss(postprocess*, uint32_t)’: RParquetReader.cpp:910:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 910 | for (auto rg = 0; rg < pp->metadata.num_row_groups; rg++) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ RParquetReader.cpp: In function ‘void convert_column_to_r_int64_dict_miss(postprocess*, uint32_t)’: RParquetReader.cpp:941:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 941 | for (auto rg = 0; rg < pp->metadata.num_row_groups; rg++) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ RParquetReader.cpp: In function ‘void convert_column_to_r_int64_raw_dict_nomiss(postprocess*, uint32_t)’: RParquetReader.cpp:1035:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 1035 | for (auto rg = 0; rg < pp->metadata.num_row_groups; rg++) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ RParquetReader.cpp: In function ‘void convert_column_to_r_int64_raw_nodict_miss(postprocess*, uint32_t)’: RParquetReader.cpp:1056:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 1056 | for (auto rg = 0; rg < pp->metadata.num_row_groups; rg++) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ RParquetReader.cpp: In function ‘void convert_column_to_r_int64_raw_dict_miss(postprocess*, uint32_t)’: RParquetReader.cpp:1083:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 1083 | for (auto rg = 0; rg < pp->metadata.num_row_groups; rg++) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ RParquetReader.cpp: In function ‘void convert_column_to_r_float_nodict_nomiss(postprocess*, uint32_t)’: RParquetReader.cpp:1153:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 1153 | for (auto rg = 0; rg < pp->metadata.num_row_groups; rg++) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ RParquetReader.cpp: In function ‘void convert_column_to_r_float_dict_nomiss(postprocess*, uint32_t)’: RParquetReader.cpp:1168:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 1168 | for (auto rg = 0; rg < pp->metadata.num_row_groups; rg++) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ RParquetReader.cpp: In function ‘void convert_column_to_r_float_nodict_miss(postprocess*, uint32_t)’: RParquetReader.cpp:1210:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 1210 | for (auto rg = 0; rg < pp->metadata.num_row_groups; rg++) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ RParquetReader.cpp: In function ‘void convert_column_to_r_float_dict_miss(postprocess*, uint32_t)’: RParquetReader.cpp:1239:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 1239 | for (auto rg = 0; rg < pp->metadata.num_row_groups; rg++) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ RParquetReader.cpp: In function ‘void convert_column_to_r_int96_dict_nomiss(postprocess*, uint32_t)’: RParquetReader.cpp:1341:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 1341 | for (auto rg = 0; rg < pp->metadata.num_row_groups; rg++) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ RParquetReader.cpp: In function ‘void convert_column_to_r_int96_nodict_miss(postprocess*, uint32_t)’: RParquetReader.cpp:1380:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 1380 | for (auto rg = 0; rg < pp->metadata.num_row_groups; rg++) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ RParquetReader.cpp: In function ‘void convert_column_to_r_int96_dict_miss(postprocess*, uint32_t)’: RParquetReader.cpp:1414:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 1414 | for (auto rg = 0; rg < pp->metadata.num_row_groups; rg++) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ RParquetReader.cpp: In function ‘void convert_column_to_r_ba_string_nodict_nomiss(postprocess*, uint32_t)’: RParquetReader.cpp:1503:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 1503 | for (auto rg = 0; rg < pp->metadata.num_row_groups; rg++) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ RParquetReader.cpp:1509:26: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 1509 | for (auto i = 0; i < it->offsets.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ RParquetReader.cpp: In function ‘void convert_column_to_r_ba_string_dict_nomiss(postprocess*, uint32_t)’: RParquetReader.cpp:1525:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 1525 | for (auto rg = 0; rg < pp->metadata.num_row_groups; rg++) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ RParquetReader.cpp:1531:28: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 1531 | for (auto i = 0; i < it->offsets.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ RParquetReader.cpp: In function ‘void convert_column_to_r_ba_string_miss(postprocess*, uint32_t)’: RParquetReader.cpp:1579:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 1579 | for (auto rg = 0; rg < pp->metadata.num_row_groups; rg++) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ RParquetReader.cpp: In function ‘double parse_decimal(uint8_t*, uint32_t)’: RParquetReader.cpp:1638:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 1638 | for (auto j = 0; j < len; j++) { | ~~^~~~~ RParquetReader.cpp:1645:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 1645 | for (auto j = 0; j < len; j++) { | ~~^~~~~ RParquetReader.cpp: In function ‘void convert_column_to_r_ba_decimal_nodict_nomiss(postprocess*, uint32_t)’: RParquetReader.cpp:1656:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 1656 | for (auto rg = 0; rg < pp->metadata.num_row_groups; rg++) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ RParquetReader.cpp:1663:26: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 1663 | for (auto i = 0; i < it->offsets.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ RParquetReader.cpp: In function ‘void convert_column_to_r_ba_decimal_miss(postprocess*, uint32_t)’: RParquetReader.cpp:1672:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 1672 | for (auto rg = 0; rg < pp->metadata.num_row_groups; rg++) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ RParquetReader.cpp: In function ‘void convert_column_to_r_ba_decimal_dict_nomiss(postprocess*, uint32_t)’: RParquetReader.cpp:1700:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 1700 | for (auto rg = 0; rg < pp->metadata.num_row_groups; rg++) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ RParquetReader.cpp:1707:28: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 1707 | for (auto i = 0; i < it->offsets.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ RParquetReader.cpp: In function ‘void convert_column_to_r_ba_raw_nodict_nomiss(postprocess*, uint32_t)’: RParquetReader.cpp:1767:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 1767 | for (auto rg = 0; rg < pp->metadata.num_row_groups; rg++) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ RParquetReader.cpp:1773:26: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 1773 | for (auto i = 0; i < it->offsets.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ RParquetReader.cpp: In function ‘void convert_column_to_r_ba_raw_dict_nomiss(postprocess*, uint32_t)’: RParquetReader.cpp:1785:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 1785 | for (auto rg = 0; rg < pp->metadata.num_row_groups; rg++) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ RParquetReader.cpp:1791:28: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 1791 | for (auto i = 0; i < it->offsets.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ RParquetReader.cpp: In function ‘void convert_column_to_r_ba_raw_miss(postprocess*, uint32_t)’: RParquetReader.cpp:1832:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 1832 | for (auto rg = 0; rg < pp->metadata.num_row_groups; rg++) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ RParquetReader.cpp: In function ‘void convert_column_to_r_ba_uuid_nodict_nomiss(postprocess*, uint32_t)’: RParquetReader.cpp:1885:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 1885 | for (auto rg = 0; rg < pp->metadata.num_row_groups; rg++) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ RParquetReader.cpp:1891:26: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 1891 | for (auto i = 0; i < it->offsets.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ RParquetReader.cpp: In function ‘void convert_column_to_r_ba_uuid_dict_nomiss(postprocess*, uint32_t)’: RParquetReader.cpp:1909:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 1909 | for (auto rg = 0; rg < pp->metadata.num_row_groups; rg++) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ RParquetReader.cpp:1915:28: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 1915 | for (auto i = 0; i < it->offsets.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ RParquetReader.cpp: In function ‘void convert_column_to_r_ba_float16_nodict_nomiss(postprocess*, uint32_t)’: RParquetReader.cpp:1991:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 1991 | for (auto rg = 0; rg < pp->metadata.num_row_groups; rg++) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ RParquetReader.cpp:1997:26: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 1997 | for (auto i = 0; i < it->offsets.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ RParquetReader.cpp: In function ‘void convert_column_to_r_ba_float16_dict_nomiss(postprocess*, uint32_t)’: RParquetReader.cpp:2008:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 2008 | for (auto rg = 0; rg < pp->metadata.num_row_groups; rg++) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ RParquetReader.cpp:2014:28: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 2014 | for (auto i = 0; i < it->offsets.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ RParquetReader.cpp: In function ‘void convert_column_to_r_int32_decimal_nodict_nomiss(postprocess*, uint32_t)’: RParquetReader.cpp:2083:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 2083 | for (auto rg = 0; rg < pp->metadata.num_row_groups; rg++) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ RParquetReader.cpp: In function ‘void convert_column_to_r_int32_decimal_dict_nomiss(postprocess*, uint32_t)’: RParquetReader.cpp:2100:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 2100 | for (auto rg = 0; rg < pp->metadata.num_row_groups; rg++) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ RParquetReader.cpp: In function ‘void convert_column_to_r_int64_decimal_dict_nomiss(postprocess*, uint32_t)’: RParquetReader.cpp:2177:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 2177 | for (auto rg = 0; rg < pp->metadata.num_row_groups; rg++) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ RParquetReader.cpp: In function ‘void convert_columns_to_r_(postprocess*)’: RParquetReader.cpp:2242:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 2242 | for (auto cl = 0; cl < pp->metadata.num_cols_to_read; cl++) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ RParquetReader.cpp: In member function ‘void RParquetReader::create_df()’: RParquetReader.cpp:2362:26: warning: comparison of integer expressions of different signedness: ‘R_xlen_t’ {aka ‘long int’} and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 2362 | for (R_xlen_t i = 0; i < metadata.num_cols; i++) { | ~~^~~~~~~~~~~~~~~~~~~ RParquetReader.cpp: In member function ‘void RParquetReader::read_arrow_metadata()’: RParquetReader.cpp:2397:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 2397 | for (auto i = 0; i < kvm.size(); i++) { | ~~^~~~~~~~~~~~ g++-15 -std=gnu++20 -I"/home/hornik/tmp/R-d-gcc-15/include" -DNDEBUG -Ithrift -I. -Izstd/include -I/usr/local/include -DUSE_TYPE_CHECKING_STRICT -D_FORTIFY_SOURCE=3 -DR_NO_REMAP -fpic -g -O2 -Wall -pedantic -mtune=native -c RParquetAppender.cpp -o RParquetAppender.o In file included from lib/ParquetOutFile.h:8, from RParquetAppender.h:2, from RParquetAppender.cpp:1: lib/bytebuffer.h: In member function ‘BufferGuard BufferManager::claim()’: lib/bytebuffer.h:106:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 106 | for (auto i = 0; i < bufs.size(); i++) { | ~~^~~~~~~~~~~~~ g++-15 -std=gnu++20 -I"/home/hornik/tmp/R-d-gcc-15/include" -DNDEBUG -Ithrift -I. -Izstd/include -I/usr/local/include -DUSE_TYPE_CHECKING_STRICT -D_FORTIFY_SOURCE=3 -DR_NO_REMAP -fpic -g -O2 -Wall -pedantic -mtune=native -c RParquetOutFile.cpp -o RParquetOutFile.o In file included from lib/ParquetOutFile.h:8, from r-nanoparquet.h:7, from RParquetOutFile.cpp:4: lib/bytebuffer.h: In member function ‘BufferGuard BufferManager::claim()’: lib/bytebuffer.h:106:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 106 | for (auto i = 0; i < bufs.size(); i++) { | ~~^~~~~~~~~~~~~ RParquetOutFile.cpp: In member function ‘virtual void RParquetOutFile::write_int32(std::ostream&, uint32_t, uint32_t, uint32_t, uint64_t, uint64_t, parquet::SchemaElement&)’: RParquetOutFile.cpp:832:13: warning: comparison of integer expressions of different signedness: ‘uint64_t’ {aka ‘long unsigned int’} and ‘R_xlen_t’ {aka ‘long int’} [-Wsign-compare] 832 | if (until > Rf_xlength(col)) { | ~~~~~~^~~~~~~~~~~~~~~~~ RParquetOutFile.cpp: In member function ‘virtual void RParquetOutFile::write_int64(std::ostream&, uint32_t, uint32_t, uint32_t, uint64_t, uint64_t, parquet::SchemaElement&)’: RParquetOutFile.cpp:1240:13: warning: comparison of integer expressions of different signedness: ‘uint64_t’ {aka ‘long unsigned int’} and ‘R_xlen_t’ {aka ‘long int’} [-Wsign-compare] 1240 | if (until > Rf_xlength(col)) { | ~~~~~~^~~~~~~~~~~~~~~~~ RParquetOutFile.cpp: In member function ‘virtual void RParquetOutFile::write_int96(std::ostream&, uint32_t, uint32_t, uint32_t, uint64_t, uint64_t, parquet::SchemaElement&)’: RParquetOutFile.cpp:1286:13: warning: comparison of integer expressions of different signedness: ‘uint64_t’ {aka ‘long unsigned int’} and ‘R_xlen_t’ {aka ‘long int’} [-Wsign-compare] 1286 | if (until > Rf_xlength(col)) { | ~~~~~~^~~~~~~~~~~~~~~~~ RParquetOutFile.cpp: In member function ‘virtual void RParquetOutFile::write_float(std::ostream&, uint32_t, uint32_t, uint32_t, uint64_t, uint64_t, parquet::SchemaElement&)’: RParquetOutFile.cpp:1338:13: warning: comparison of integer expressions of different signedness: ‘uint64_t’ {aka ‘long unsigned int’} and ‘R_xlen_t’ {aka ‘long int’} [-Wsign-compare] 1338 | if (until > Rf_xlength(col)) { | ~~~~~~^~~~~~~~~~~~~~~~~ RParquetOutFile.cpp: In member function ‘virtual void RParquetOutFile::write_double(std::ostream&, uint32_t, uint32_t, uint32_t, uint64_t, uint64_t, parquet::SchemaElement&)’: RParquetOutFile.cpp:1411:13: warning: comparison of integer expressions of different signedness: ‘uint64_t’ {aka ‘long unsigned int’} and ‘R_xlen_t’ {aka ‘long int’} [-Wsign-compare] 1411 | if (until > Rf_xlength(col)) { | ~~~~~~^~~~~~~~~~~~~~~~~ RParquetOutFile.cpp: In member function ‘virtual void RParquetOutFile::write_byte_array(std::ostream&, uint32_t, uint32_t, uint32_t, uint64_t, uint64_t, parquet::SchemaElement&)’: RParquetOutFile.cpp:1482:13: warning: comparison of integer expressions of different signedness: ‘uint64_t’ {aka ‘long unsigned int’} and ‘R_xlen_t’ {aka ‘long int’} [-Wsign-compare] 1482 | if (until > Rf_xlength(col)) { | ~~~~~~^~~~~~~~~~~~~~~~~ RParquetOutFile.cpp: In member function ‘virtual uint32_t RParquetOutFile::get_size_byte_array(uint32_t, uint32_t, uint64_t, uint64_t)’: RParquetOutFile.cpp:1572:13: warning: comparison of integer expressions of different signedness: ‘uint64_t’ {aka ‘long unsigned int’} and ‘R_xlen_t’ {aka ‘long int’} [-Wsign-compare] 1572 | if (until > Rf_xlength(col)) { | ~~~~~~^~~~~~~~~~~~~~~~~ RParquetOutFile.cpp: In member function ‘virtual void RParquetOutFile::write_fixed_len_byte_array(std::ostream&, uint32_t, uint32_t, uint32_t, uint64_t, uint64_t, parquet::SchemaElement&)’: RParquetOutFile.cpp:1675:13: warning: comparison of integer expressions of different signedness: ‘uint64_t’ {aka ‘long unsigned int’} and ‘R_xlen_t’ {aka ‘long int’} [-Wsign-compare] 1675 | if (until > Rf_xlength(col)) { | ~~~~~~^~~~~~~~~~~~~~~~~ RParquetOutFile.cpp: In function ‘void write_boolean_impl(std::ostream&, SEXP, uint64_t, uint64_t)’: RParquetOutFile.cpp:1795:13: warning: comparison of integer expressions of different signedness: ‘uint64_t’ {aka ‘long unsigned int’} and ‘R_xlen_t’ {aka ‘long int’} [-Wsign-compare] 1795 | if (until > Rf_xlength(col)) { | ~~~~~~^~~~~~~~~~~~~~~~~ RParquetOutFile.cpp: In member function ‘virtual void RParquetOutFile::write_boolean_as_int(std::ostream&, uint32_t, uint32_t, uint32_t, uint64_t, uint64_t)’: RParquetOutFile.cpp:1850:13: warning: comparison of integer expressions of different signedness: ‘uint64_t’ {aka ‘long unsigned int’} and ‘R_xlen_t’ {aka ‘long int’} [-Wsign-compare] 1850 | if (until > Rf_xlength(col)) { | ~~~~~~^~~~~~~~~~~~~~~~~ RParquetOutFile.cpp: In member function ‘virtual void RParquetOutFile::write_present_boolean_as_int(std::ostream&, uint32_t, uint32_t, uint64_t, uint64_t)’: RParquetOutFile.cpp:2045:13: warning: comparison of integer expressions of different signedness: ‘uint64_t’ {aka ‘long unsigned int’} and ‘R_xlen_t’ {aka ‘long int’} [-Wsign-compare] 2045 | if (until > Rf_xlength(col)) { | ~~~~~~^~~~~~~~~~~~~~~~~ RParquetOutFile.cpp: In member function ‘virtual void RParquetOutFile::write_present_boolean_as_bitpacked(std::ostream&, uint32_t, uint32_t, uint64_t, uint64_t)’: RParquetOutFile.cpp:2079:13: warning: comparison of integer expressions of different signedness: ‘uint64_t’ {aka ‘long unsigned int’} and ‘R_xlen_t’ {aka ‘long int’} [-Wsign-compare] 2079 | if (until > Rf_xlength(col)) { | ~~~~~~^~~~~~~~~~~~~~~~~ RParquetOutFile.cpp: In member function ‘virtual void RParquetOutFile::write_dictionary(std::ostream&, uint32_t, parquet::SchemaElement&, int64_t, int64_t)’: RParquetOutFile.cpp:2687:30: warning: comparison of integer expressions of different signedness: ‘uint64_t’ {aka ‘long unsigned int’} and ‘R_xlen_t’ {aka ‘long int’} [-Wsign-compare] 2687 | for (uint64_t i = 0; i < len; i++) { | ~~^~~~~ RParquetOutFile.cpp:2702:32: warning: comparison of integer expressions of different signedness: ‘uint64_t’ {aka ‘long unsigned int’} and ‘R_xlen_t’ {aka ‘long int’} [-Wsign-compare] 2702 | for (uint64_t i = 0; i < len; i++) { | ~~^~~~~ RParquetOutFile.cpp:2718:32: warning: comparison of integer expressions of different signedness: ‘uint64_t’ {aka ‘long unsigned int’} and ‘R_xlen_t’ {aka ‘long int’} [-Wsign-compare] 2718 | for (uint64_t i = 0; i < len; i++) { | ~~^~~~~ RParquetOutFile.cpp:2721:20: warning: comparison of integer expressions of different signedness: ‘uint32_t’ {aka ‘unsigned int’} and ‘int32_t’ {aka ‘int’} [-Wsign-compare] 2721 | if (len1 != sel.type_length) { | ~~~~~^~~~~~~~~~~~~~~~~~ RParquetOutFile.cpp: In member function ‘void RParquetOutFile::write_integer_int32(std::ostream&, SEXP, uint32_t, uint64_t, uint64_t, parquet::SchemaElement&)’: RParquetOutFile.cpp:601:9: warning: ‘max’ may be used uninitialized [-Wmaybe-uninitialized] 601 | min = is_signed ? -max-1 : 0; | ~~~~^~~~~~~~~~~~~~~~~~~~~~~~ RParquetOutFile.cpp:588:14: note: ‘max’ was declared here 588 | int min, max; | ^~~ RParquetOutFile.cpp: In member function ‘void RParquetOutFile::write_double_int32(std::ostream&, SEXP, uint32_t, uint64_t, uint64_t, parquet::SchemaElement&)’: RParquetOutFile.cpp:792:15: warning: ‘max’ may be used uninitialized [-Wmaybe-uninitialized] 792 | if (val > max) { | ~~~~^~~~~ RParquetOutFile.cpp:770:14: note: ‘max’ was declared here 770 | uint32_t max; | ^~~ RParquetOutFile.cpp: In member function ‘virtual void RParquetOutFile::write_dictionary(std::ostream&, uint32_t, parquet::SchemaElement&, int64_t, int64_t)’: RParquetOutFile.cpp:2575:23: warning: ‘max’ may be used uninitialized [-Wmaybe-uninitialized] 2575 | if (val > max) { | ~~~~^~~~~ RParquetOutFile.cpp:2554:22: note: ‘max’ was declared here 2554 | uint32_t max; | ^~~ g++-15 -std=gnu++20 -I"/home/hornik/tmp/R-d-gcc-15/include" -DNDEBUG -Ithrift -I. -Izstd/include -I/usr/local/include -DUSE_TYPE_CHECKING_STRICT -D_FORTIFY_SOURCE=3 -DR_NO_REMAP -fpic -g -O2 -Wall -pedantic -mtune=native -c r-utils.cpp -o r-utils.o In file included from lib/ParquetOutFile.h:8, from r-nanoparquet.h:7, from r-utils.cpp:4: lib/bytebuffer.h: In member function ‘BufferGuard BufferManager::claim()’: lib/bytebuffer.h:106:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 106 | for (auto i = 0; i < bufs.size(); i++) { | ~~^~~~~~~~~~~~~ r-utils.cpp: In function ‘uint16_t double_to_float16(double)’: r-utils.cpp:68:21: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] 68 | uint32_t fi32 = *((uint32_t*) &f); | ~^~~~~~~~~~~~~~~ r-nanoparquet.h: At global scope: r-nanoparquet.h:31:20: warning: ‘type_names’ defined but not used [-Wunused-variable] 31 | static const char *type_names[] = { | ^~~~~~~~~~ g++-15 -std=gnu++20 -I"/home/hornik/tmp/R-d-gcc-15/include" -DNDEBUG -Ithrift -I. -Izstd/include -I/usr/local/include -DUSE_TYPE_CHECKING_STRICT -D_FORTIFY_SOURCE=3 -DR_NO_REMAP -fpic -g -O2 -Wall -pedantic -mtune=native -c rwrapper.cpp -o rwrapper.o g++-15 -std=gnu++20 -I"/home/hornik/tmp/R-d-gcc-15/include" -DNDEBUG -Ithrift -I. -Izstd/include -I/usr/local/include -DUSE_TYPE_CHECKING_STRICT -D_FORTIFY_SOURCE=3 -DR_NO_REMAP -fpic -g -O2 -Wall -pedantic -mtune=native -c protect.cpp -o protect.o g++-15 -std=gnu++20 -I"/home/hornik/tmp/R-d-gcc-15/include" -DNDEBUG -Ithrift -I. -Izstd/include -I/usr/local/include -DUSE_TYPE_CHECKING_STRICT -D_FORTIFY_SOURCE=3 -DR_NO_REMAP -fpic -g -O2 -Wall -pedantic -mtune=native -c read2.cpp -o read2.o In file included from lib/nanoparquet.h:8, from read2.cpp:4: lib/bytebuffer.h: In member function ‘BufferGuard BufferManager::claim()’: lib/bytebuffer.h:106:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 106 | for (auto i = 0; i < bufs.size(); i++) { | ~~^~~~~~~~~~~~~ read2.cpp: In function ‘SEXPREC* create_presents(RParquetReader&)’: read2.cpp:23:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 23 | for (auto cl = 0; cl < reader.present.size(); cl++) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~ read2.cpp:25:26: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 25 | for (auto rg = 0; rg < reader.present[cl].size(); rg++) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ read2.cpp:31:26: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 31 | for (auto rg = 0; rg < reader.present[cl].size(); rg++) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ read2.cpp: In function ‘SEXPREC* nanoparquet_read_col_names(SEXP)’: read2.cpp:294:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 294 | for (auto i = 0; i < ncols; i++) { | ~~^~~~~~~ read2.cpp:301:33: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 301 | for (auto i = 0, idx = 0; i < ncols; i++) { | ~~^~~~~~~ In file included from read2.cpp:10: r-nanoparquet.h: At global scope: r-nanoparquet.h:31:20: warning: ‘type_names’ defined but not used [-Wunused-variable] 31 | static const char *type_names[] = { | ^~~~~~~~~~ g++-15 -std=gnu++20 -I"/home/hornik/tmp/R-d-gcc-15/include" -DNDEBUG -Ithrift -I. -Izstd/include -I/usr/local/include -DUSE_TYPE_CHECKING_STRICT -D_FORTIFY_SOURCE=3 -DR_NO_REMAP -fpic -g -O2 -Wall -pedantic -mtune=native -c write2.cpp -o write2.o In file included from write2.cpp:1: lib/memstream.h: In member function ‘virtual std::streamsize MemStream::xsputn(const char*, std::streamsize)’: lib/memstream.h:38:13: warning: comparison of integer expressions of different signedness: ‘std::streamsize’ {aka ‘long int’} and ‘uint64_t’ {aka ‘long unsigned int’} [-Wsign-compare] 38 | if (n > space) { | ~~^~~~~~~ In file included from lib/nanoparquet.h:8, from RParquetOutFile.h:2, from write2.cpp:4: lib/bytebuffer.h: In member function ‘BufferGuard BufferManager::claim()’: lib/bytebuffer.h:106:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 106 | for (auto i = 0; i < bufs.size(); i++) { | ~~^~~~~~~~~~~~~ In file included from write2.cpp:6: r-nanoparquet.h: At global scope: r-nanoparquet.h:31:20: warning: ‘type_names’ defined but not used [-Wunused-variable] 31 | static const char *type_names[] = { | ^~~~~~~~~~ gcc-15 -I"/home/hornik/tmp/R-d-gcc-15/include" -DNDEBUG -Ithrift -I. -Izstd/include -I/usr/local/include -DUSE_TYPE_CHECKING_STRICT -D_FORTIFY_SOURCE=3 -fpic -g -O2 -Wall -Wstrict-prototypes -pedantic -mtune=native -c write_stdout.c -o write_stdout.o g++-15 -std=gnu++20 -I"/home/hornik/tmp/R-d-gcc-15/include" -DNDEBUG -Ithrift -I. -Izstd/include -I/usr/local/include -DUSE_TYPE_CHECKING_STRICT -D_FORTIFY_SOURCE=3 -DR_NO_REMAP -fpic -g -O2 -Wall -pedantic -mtune=native -c cpp-utils.cpp -o cpp-utils.o In file included from lib/nanoparquet.h:8, from cpp-utils.cpp:1: lib/bytebuffer.h: In member function ‘BufferGuard BufferManager::claim()’: lib/bytebuffer.h:106:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 106 | for (auto i = 0; i < bufs.size(); i++) { | ~~^~~~~~~~~~~~~ g++-15 -std=gnu++20 -I"/home/hornik/tmp/R-d-gcc-15/include" -DNDEBUG -Ithrift -I. -Izstd/include -I/usr/local/include -DUSE_TYPE_CHECKING_STRICT -D_FORTIFY_SOURCE=3 -DR_NO_REMAP -fpic -g -O2 -Wall -pedantic -mtune=native -c read-metadata.cpp -o read-metadata.o In file included from lib/nanoparquet.h:8, from read-metadata.cpp:1: lib/bytebuffer.h: In member function ‘BufferGuard BufferManager::claim()’: lib/bytebuffer.h:106:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 106 | for (auto i = 0; i < bufs.size(); i++) { | ~~^~~~~~~~~~~~~ read-metadata.cpp: In function ‘SEXPREC* convert_key_value_metadata(const parquet::FileMetaData&)’: read-metadata.cpp:133:28: warning: comparison of integer expressions of different signedness: ‘R_xlen_t’ {aka ‘long int’} and ‘long unsigned int’ [-Wsign-compare] 133 | for (R_xlen_t i = 0; i < kvsize; i++) { | ~~^~~~~~~~ read-metadata.cpp: In function ‘SEXPREC* convert_row_groups(const char*, std::vector&)’: read-metadata.cpp:247:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘long unsigned int’ [-Wsign-compare] 247 | for (auto i = 0; i < nrgs; i++) { | ~~^~~~~~ read-metadata.cpp: In function ‘SEXPREC* convert_column_chunks(const char*, std::vector&)’: read-metadata.cpp:302:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 302 | for (auto i = 0; i < rgs.size(); i++) { | ~~^~~~~~~~~~~~ read-metadata.cpp:335:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 335 | for (int i = 0; i < rgs.size(); i++) { | ~~^~~~~~~~~~~~ read-metadata.cpp:336:23: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 336 | for (int j = 0; j < rgs[i].columns.size(); j++) { | ~~^~~~~~~~~~~~~~~~~~~~~~~ read-metadata.cpp:355:26: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 355 | for (auto k = 0; k < cmd.encodings.size(); k++) { | ~~^~~~~~~~~~~~~~~~~~~~~~ read-metadata.cpp:359:26: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 359 | for (auto k = 0; k < cmd.path_in_schema.size(); k++) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ g++-15 -std=gnu++20 -I"/home/hornik/tmp/R-d-gcc-15/include" -DNDEBUG -Ithrift -I. -Izstd/include -I/usr/local/include -DUSE_TYPE_CHECKING_STRICT -D_FORTIFY_SOURCE=3 -DR_NO_REMAP -fpic -g -O2 -Wall -pedantic -mtune=native -c read-pages.cpp -o read-pages.o In file included from lib/nanoparquet.h:8, from read-pages.cpp:1: lib/bytebuffer.h: In member function ‘BufferGuard BufferManager::claim()’: lib/bytebuffer.h:106:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 106 | for (auto i = 0; i < bufs.size(); i++) { | ~~^~~~~~~~~~~~~ read-pages.cpp: In function ‘SEXPREC* nanoparquet_read_pages(SEXP)’: read-pages.cpp:27:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 27 | for (auto i = 0; i < rgs.size(); i++) { | ~~^~~~~~~~~~~~ read-pages.cpp:28:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 28 | for (auto j = 0; j < rgs[i].columns.size(); j++) { | ~~^~~~~~~~~~~~~~~~~~~~~~~ read-pages.cpp:101:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 101 | for (auto i = 0; i < rgs.size(); i++) { | ~~^~~~~~~~~~~~ read-pages.cpp:102:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 102 | for (auto j = 0; j < rgs[i].columns.size(); j++) { | ~~^~~~~~~~~~~~~~~~~~~~~~~ read-pages.cpp: In function ‘PageData find_page(nanoparquet::ParquetReader&, int64_t)’: read-pages.cpp:213:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 213 | for (auto i = 0; i < rgs.size(); i++) { | ~~^~~~~~~~~~~~ read-pages.cpp:214:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 214 | for (auto j = 0; j < rgs[i].columns.size(); j++) { | ~~^~~~~~~~~~~~~~~~~~~~~~~ g++-15 -std=gnu++20 -I"/home/hornik/tmp/R-d-gcc-15/include" -DNDEBUG -Ithrift -I. -Izstd/include -I/usr/local/include -DUSE_TYPE_CHECKING_STRICT -D_FORTIFY_SOURCE=3 -DR_NO_REMAP -fpic -g -O2 -Wall -pedantic -mtune=native -c arrow-schema.cpp -o arrow-schema.o In file included from arrow-schema.cpp:7: lib/bytebuffer.h: In member function ‘BufferGuard BufferManager::claim()’: lib/bytebuffer.h:106:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 106 | for (auto i = 0; i < bufs.size(); i++) { | ~~^~~~~~~~~~~~~ arrow-schema.cpp: In function ‘SEXPREC* nanoparquet_parse_arrow_schema_impl(uint8_t*, uint32_t)’: arrow-schema.cpp:80:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 80 | for (auto i = 0; i < sch->fields.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~ arrow-schema.cpp:187:28: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 187 | for (auto j = 0; j < ft->typeIds.size(); j++) { | ~~^~~~~~~~~~~~~~~~~~~~ arrow-schema.cpp:262:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 262 | for (auto j = 0; j < kvlen; j++) { | ~~^~~~~~~ arrow-schema.cpp:280:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 280 | for (auto i = 0; i < sch->custom_metadata.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ arrow-schema.cpp:294:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 294 | for (auto i = 0; i < sch->features.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~~~ arrow-schema.cpp: In function ‘SEXPREC* nanoparquet_encode_arrow_schema(SEXP)’: arrow-schema.cpp:379:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 379 | for (auto i = 0; i < nfields; i++) { | ~~^~~~~~~~~ g++-15 -std=gnu++20 -I"/home/hornik/tmp/R-d-gcc-15/include" -DNDEBUG -Ithrift -I. -Izstd/include -I/usr/local/include -DUSE_TYPE_CHECKING_STRICT -D_FORTIFY_SOURCE=3 -DR_NO_REMAP -fpic -g -O2 -Wall -pedantic -mtune=native -c base64.cpp -o base64.o g++-15 -std=gnu++20 -I"/home/hornik/tmp/R-d-gcc-15/include" -DNDEBUG -Ithrift -I. -Izstd/include -I/usr/local/include -DUSE_TYPE_CHECKING_STRICT -D_FORTIFY_SOURCE=3 -DR_NO_REMAP -fpic -g -O2 -Wall -pedantic -mtune=native -c r-base64.cpp -o r-base64.o g++-15 -std=gnu++20 -I"/home/hornik/tmp/R-d-gcc-15/include" -DNDEBUG -Ithrift -I. -Izstd/include -I/usr/local/include -DUSE_TYPE_CHECKING_STRICT -D_FORTIFY_SOURCE=3 -DR_NO_REMAP -fpic -g -O2 -Wall -pedantic -mtune=native -c snappy.cpp -o snappy.o g++-15 -std=gnu++20 -I"/home/hornik/tmp/R-d-gcc-15/include" -DNDEBUG -Ithrift -I. -Izstd/include -I/usr/local/include -DUSE_TYPE_CHECKING_STRICT -D_FORTIFY_SOURCE=3 -DR_NO_REMAP -fpic -g -O2 -Wall -pedantic -mtune=native -c encodings.cpp -o encodings.o In file included from lib/nanoparquet.h:8, from lib/RleBpDecoder.h:5, from encodings.cpp:1: lib/bytebuffer.h: In member function ‘BufferGuard BufferManager::claim()’: lib/bytebuffer.h:106:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 106 | for (auto i = 0; i < bufs.size(); i++) { | ~~^~~~~~~~~~~~~ lib/RleBpDecoder.h: In instantiation of ‘int RleBpDecoder::GetBatch(T*, int) [with T = unsigned int]’: encodings.cpp:32:19: required from here 32 | decoder.GetBatch((uint32_t *)INTEGER(res), num_values); | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ lib/RleBpDecoder.h:30:24: warning: comparison of integer expressions of different signedness: ‘uint32_t’ {aka ‘unsigned int’} and ‘int’ [-Wsign-compare] 30 | while (values_read < batch_size) { | ~~~~~~~~~~~~^~~~~~~~~~~~ In file included from encodings.cpp:2: lib/RleBpEncoder.h: In instantiation of ‘uint32_t RleBpEncode(const T*, uint32_t, uint8_t, uint8_t*, uint32_t) [with T = int; uint32_t = unsigned int; uint8_t = unsigned char]’: encodings.cpp:50:26: required from here 50 | size_t rs = RleBpEncode(input, input_len, bw, output, os); | ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ lib/RleBpEncoder.h:63:16: warning: comparison of integer expressions of different signedness: ‘uint32_t’ {aka ‘unsigned int’} and ‘int’ [-Wsign-compare] 63 | if (reps >= min_reps) { | ~~~~~^~~~~~~~~~~ In file included from encodings.cpp:3: lib/DbpDecoder.h: In instantiation of ‘uint8_t* DbpDecoder::decode(T*) [with T = int; Tunsigned = unsigned int; uint8_t = unsigned char]’: encodings.cpp:72:13: required from here 72 | dbp.decode(INTEGER(res)); | ~~~~~~~~~~^~~~~~~~~~~~~~ lib/DbpDecoder.h:68:38: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 68 | for (auto i = 0; todo > 0 && i < mini_blocks_per_block; i++) { | ~~^~~~~~~~~~~~~~~~~~~~~~~ lib/DbpDecoder.h:84:28: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint64_t’ {aka ‘long unsigned int’} [-Wsign-compare] 84 | for (auto i = 0; i < mb_vals; i++) { | ~~^~~~~~~~~ lib/DbpDecoder.h: In instantiation of ‘uint8_t* DbpDecoder::decode(T*) [with T = long int; Tunsigned = long unsigned int; uint8_t = unsigned char]’: encodings.cpp:90:13: required from here 90 | dbp.decode((int64_t*) REAL(res)); | ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ lib/DbpDecoder.h:68:38: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 68 | for (auto i = 0; todo > 0 && i < mini_blocks_per_block; i++) { | ~~^~~~~~~~~~~~~~~~~~~~~~~ lib/DbpDecoder.h:84:28: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint64_t’ {aka ‘long unsigned int’} [-Wsign-compare] 84 | for (auto i = 0; i < mb_vals; i++) { | ~~^~~~~~~~~ In file included from lib/DbpDecoder.h:6: lib/decode-utils.h: In instantiation of ‘void unpack_bits(uint8_t*, uint64_t, uint8_t, T*, uint64_t) [with T = unsigned int; uint8_t = unsigned char; uint64_t = long unsigned int]’: encodings.cpp:108:24: required from here 108 | unpack_bits( | ~~~~~~~~~~~~~~~~~~~~~^ 109 | RAW(x), | ~~~~~~~ 110 | Rf_xlength(x), | ~~~~~~~~~~~~~~ 111 | INTEGER(bit_width)[0], | ~~~~~~~~~~~~~~~~~~~~~~ 112 | (uint32_t*) INTEGER(res), | ~~~~~~~~~~~~~~~~~~~~~~~~~ 113 | cn | ~~ 114 | ); | ~ lib/decode-utils.h:58:21: warning: comparison of integer expressions of different signedness: ‘uint64_t’ {aka ‘long unsigned int’} and ‘int’ [-Wsign-compare] 58 | while (num_values > output_group_size) { | ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~ lib/decode-utils.h: In instantiation of ‘void unpack_bits(uint8_t*, uint64_t, uint8_t, T*, uint64_t) [with T = long unsigned int; uint8_t = unsigned char; uint64_t = long unsigned int]’: lib/DbpDecoder.h:77:31: required from ‘uint8_t* DbpDecoder::decode(T*) [with T = long int; Tunsigned = long unsigned int; uint8_t = unsigned char]’ 77 | unpack_bits( | ~~~~~~~~~~~~~~~~~~~~~~^ 78 | buf->start, | ~~~~~~~~~~~ 79 | mb_len, | ~~~~~~~ 80 | bw, | ~~~ 81 | (Tunsigned*) values, | ~~~~~~~~~~~~~~~~~~~~ 82 | mb_vals | ~~~~~~~ 83 | ); | ~ encodings.cpp:90:13: required from here 90 | dbp.decode((int64_t*) REAL(res)); | ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~ lib/decode-utils.h:58:21: warning: comparison of integer expressions of different signedness: ‘uint64_t’ {aka ‘long unsigned int’} and ‘int’ [-Wsign-compare] 58 | while (num_values > output_group_size) { | ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~ g++-15 -std=gnu++20 -I"/home/hornik/tmp/R-d-gcc-15/include" -DNDEBUG -Ithrift -I. -Izstd/include -I/usr/local/include -DUSE_TYPE_CHECKING_STRICT -D_FORTIFY_SOURCE=3 -DR_NO_REMAP -fpic -g -O2 -Wall -pedantic -mtune=native -c dictionary-encoding.cpp -o dictionary-encoding.o dictionary-encoding.cpp: In function ‘SEXPREC* nanoparquet_avg_run_length(SEXP, SEXP)’: dictionary-encoding.cpp:473:11: warning: comparison of integer expressions of different signedness: ‘uint32_t’ {aka ‘unsigned int’} and ‘int’ [-Wsign-compare] 473 | if (len == -1) { | ~~~~^~~~~ dictionary-encoding.cpp:483:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 483 | for (auto i = 0; i < len; i++, xx++) { | ~~^~~~~ g++-15 -std=gnu++20 -I"/home/hornik/tmp/R-d-gcc-15/include" -DNDEBUG -Ithrift -I. -Izstd/include -I/usr/local/include -DUSE_TYPE_CHECKING_STRICT -D_FORTIFY_SOURCE=3 -DR_NO_REMAP -fpic -g -O2 -Wall -pedantic -mtune=native -c test.cpp -o test.o In file included from test.cpp:2: lib/memstream.h: In member function ‘virtual std::streamsize MemStream::xsputn(const char*, std::streamsize)’: lib/memstream.h:38:13: warning: comparison of integer expressions of different signedness: ‘std::streamsize’ {aka ‘long int’} and ‘uint64_t’ {aka ‘long unsigned int’} [-Wsign-compare] 38 | if (n > space) { | ~~^~~~~~~ g++-15 -std=gnu++20 -I"/home/hornik/tmp/R-d-gcc-15/include" -DNDEBUG -Ithrift -I. -Izstd/include -I/usr/local/include -DUSE_TYPE_CHECKING_STRICT -D_FORTIFY_SOURCE=3 -DR_NO_REMAP -fpic -g -O2 -Wall -pedantic -mtune=native -c lib/ParquetOutFile.cpp -o lib/ParquetOutFile.o In file included from lib/nanoparquet.h:8, from lib/ParquetOutFile.cpp:12: lib/bytebuffer.h: In member function ‘BufferGuard BufferManager::claim()’: lib/bytebuffer.h:106:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 106 | for (auto i = 0; i < bufs.size(); i++) { | ~~^~~~~~~~~~~~~ lib/ParquetOutFile.cpp: In member function ‘void nanoparquet::ParquetOutFile::append()’: lib/ParquetOutFile.cpp:559:25: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 559 | for (int idx = 0; idx < row_group_starts.size(); idx++) { | ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~ lib/ParquetOutFile.cpp:565:25: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 565 | int64_t until = idx < row_group_starts.size() - 1 ? row_group_starts[idx + 1] : num_rows; | ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ lib/ParquetOutFile.cpp: In member function ‘void nanoparquet::ParquetOutFile::write_data_pages(uint32_t, uint32_t, int64_t, int64_t, uint32_t, uint32_t)’: lib/ParquetOutFile.cpp:743:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 743 | for (auto i = 0; i < num_pages; i++) { | ~~^~~~~~~~~~~ lib/ParquetOutFile.cpp:746:20: warning: comparison of integer expressions of different signedness: ‘uint64_t’ {aka ‘long unsigned int’} and ‘int64_t’ {aka ‘long int’} [-Wsign-compare] 746 | if (page_until > until) { | ~~~~~~~~~~~^~~~~~~ In file included from lib/ParquetOutFile.cpp:13: lib/RleBpEncoder.h: In instantiation of ‘uint32_t RleBpEncode(const T*, uint32_t, uint8_t, uint8_t*, uint32_t) [with T = int; uint32_t = unsigned int; uint8_t = unsigned char]’: lib/ParquetOutFile.cpp:531:32: required from here 531 | size_t tgt_size = RleBpEncode( | ~~~~~~~~~~~^ 532 | (int*) src.ptr, | ~~~~~~~~~~~~~~~ 533 | src_size, | ~~~~~~~~~ 534 | bit_width, | ~~~~~~~~~~ 535 | (uint8_t *) tgt.ptr + skip + (add_bit_width ? 1 : 0) + (add_size ? 4 : 0), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 536 | tgt_size_est | ~~~~~~~~~~~~ 537 | ); | ~ lib/RleBpEncoder.h:63:16: warning: comparison of integer expressions of different signedness: ‘uint32_t’ {aka ‘unsigned int’} and ‘int’ [-Wsign-compare] 63 | if (reps >= min_reps) { | ~~~~~^~~~~~~~~~~ g++-15 -std=gnu++20 -I"/home/hornik/tmp/R-d-gcc-15/include" -DNDEBUG -Ithrift -I. -Izstd/include -I/usr/local/include -DUSE_TYPE_CHECKING_STRICT -D_FORTIFY_SOURCE=3 -DR_NO_REMAP -fpic -g -O2 -Wall -pedantic -mtune=native -c lib/RleBpDecoder.cpp -o lib/RleBpDecoder.o In file included from lib/nanoparquet.h:8, from lib/RleBpDecoder.h:5, from lib/RleBpDecoder.cpp:1: lib/bytebuffer.h: In member function ‘BufferGuard BufferManager::claim()’: lib/bytebuffer.h:106:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 106 | for (auto i = 0; i < bufs.size(); i++) { | ~~^~~~~~~~~~~~~ g++-15 -std=gnu++20 -I"/home/hornik/tmp/R-d-gcc-15/include" -DNDEBUG -Ithrift -I. -Izstd/include -I/usr/local/include -DUSE_TYPE_CHECKING_STRICT -D_FORTIFY_SOURCE=3 -DR_NO_REMAP -fpic -g -O2 -Wall -pedantic -mtune=native -c parquet/parquet_types.cpp -o parquet/parquet_types.o g++-15 -std=gnu++20 -I"/home/hornik/tmp/R-d-gcc-15/include" -DNDEBUG -Ithrift -I. -Izstd/include -I/usr/local/include -DUSE_TYPE_CHECKING_STRICT -D_FORTIFY_SOURCE=3 -DR_NO_REMAP -fpic -g -O2 -Wall -pedantic -mtune=native -c thrift/protocol/TProtocol.cpp -o thrift/protocol/TProtocol.o g++-15 -std=gnu++20 -I"/home/hornik/tmp/R-d-gcc-15/include" -DNDEBUG -Ithrift -I. -Izstd/include -I/usr/local/include -DUSE_TYPE_CHECKING_STRICT -D_FORTIFY_SOURCE=3 -DR_NO_REMAP -fpic -g -O2 -Wall -pedantic -mtune=native -c thrift/transport/TTransportException.cpp -o thrift/transport/TTransportException.o g++-15 -std=gnu++20 -I"/home/hornik/tmp/R-d-gcc-15/include" -DNDEBUG -Ithrift -I. -Izstd/include -I/usr/local/include -DUSE_TYPE_CHECKING_STRICT -D_FORTIFY_SOURCE=3 -DR_NO_REMAP -fpic -g -O2 -Wall -pedantic -mtune=native -c thrift/transport/TBufferTransports.cpp -o thrift/transport/TBufferTransports.o g++-15 -std=gnu++20 -I"/home/hornik/tmp/R-d-gcc-15/include" -DNDEBUG -Ithrift -I. -Izstd/include -I/usr/local/include -DUSE_TYPE_CHECKING_STRICT -D_FORTIFY_SOURCE=3 -DR_NO_REMAP -fpic -g -O2 -Wall -pedantic -mtune=native -c fastpforlib/bitpacking.cpp -o fastpforlib/bitpacking.o g++-15 -std=gnu++20 -I"/home/hornik/tmp/R-d-gcc-15/include" -DNDEBUG -Ithrift -I. -Izstd/include -I/usr/local/include -DUSE_TYPE_CHECKING_STRICT -D_FORTIFY_SOURCE=3 -DR_NO_REMAP -fpic -g -O2 -Wall -pedantic -mtune=native -c snappy/snappy.cc -o snappy/snappy.o snappy/snappy.cc: In member function ‘void snappy::SnappySinkAllocator::Flush(size_t)’: snappy/snappy.cc:1599:23: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 1599 | for (int i = 0; i < blocks_.size(); ++i) { | ~~^~~~~~~~~~~~~~~~ In file included from snappy/snappy-internal.h:34, from snappy/snappy.cc:30: snappy/snappy.cc: In instantiation of ‘bool snappy::SnappyScatteredWriter::AppendFromSelf(size_t, size_t) [with Allocator = snappy::SnappySinkAllocator; size_t = long unsigned int]’: snappy/snappy.cc:902:36: required from ‘void snappy::SnappyDecompressor::DecompressAllTags(Writer*) [with Writer = snappy::SnappyScatteredWriter]’ 902 | if (!writer->AppendFromSelf(copy_offset + trailer, length)) { | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ snappy/snappy.cc:991:34: required from ‘bool snappy::InternalUncompressAllTags(SnappyDecompressor*, Writer*, uint32, uint32) [with Writer = SnappyScatteredWriter; uint32 = unsigned int]’ 991 | decompressor->DecompressAllTags(writer); | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~ snappy/snappy.cc:1657:37: required from here 1657 | return InternalUncompressAllTags(&decompressor, &writer, compressed_len, | ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1658 | uncompressed_len); | ~~~~~~~~~~~~~~~~~ snappy/snappy.cc:1511:41: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘long unsigned int’} and ‘long int’ [-Wsign-compare] 1511 | if (SNAPPY_PREDICT_TRUE(offset - 1u < op_ptr_ - op_base_ && | ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~ snappy/snappy-stubs-internal.h:104:32: note: in definition of macro ‘SNAPPY_PREDICT_TRUE’ 104 | #define SNAPPY_PREDICT_TRUE(x) x | ^ g++-15 -std=gnu++20 -I"/home/hornik/tmp/R-d-gcc-15/include" -DNDEBUG -Ithrift -I. -Izstd/include -I/usr/local/include -DUSE_TYPE_CHECKING_STRICT -D_FORTIFY_SOURCE=3 -DR_NO_REMAP -fpic -g -O2 -Wall -pedantic -mtune=native -c snappy/snappy-sinksource.cc -o snappy/snappy-sinksource.o g++-15 -std=gnu++20 -I"/home/hornik/tmp/R-d-gcc-15/include" -DNDEBUG -Ithrift -I. -Izstd/include -I/usr/local/include -DUSE_TYPE_CHECKING_STRICT -D_FORTIFY_SOURCE=3 -DR_NO_REMAP -fpic -g -O2 -Wall -pedantic -mtune=native -c miniz/miniz.cpp -o miniz/miniz.o g++-15 -std=gnu++20 -I"/home/hornik/tmp/R-d-gcc-15/include" -DNDEBUG -Ithrift -I. -Izstd/include -I/usr/local/include -DUSE_TYPE_CHECKING_STRICT -D_FORTIFY_SOURCE=3 -DR_NO_REMAP -fpic -g -O2 -Wall -pedantic -mtune=native -c zstd/common/entropy_common.cpp -o zstd/common/entropy_common.o g++-15 -std=gnu++20 -I"/home/hornik/tmp/R-d-gcc-15/include" -DNDEBUG -Ithrift -I. -Izstd/include -I/usr/local/include -DUSE_TYPE_CHECKING_STRICT -D_FORTIFY_SOURCE=3 -DR_NO_REMAP -fpic -g -O2 -Wall -pedantic -mtune=native -c zstd/common/error_private.cpp -o zstd/common/error_private.o g++-15 -std=gnu++20 -I"/home/hornik/tmp/R-d-gcc-15/include" -DNDEBUG -Ithrift -I. -Izstd/include -I/usr/local/include -DUSE_TYPE_CHECKING_STRICT -D_FORTIFY_SOURCE=3 -DR_NO_REMAP -fpic -g -O2 -Wall -pedantic -mtune=native -c zstd/common/fse_decompress.cpp -o zstd/common/fse_decompress.o g++-15 -std=gnu++20 -I"/home/hornik/tmp/R-d-gcc-15/include" -DNDEBUG -Ithrift -I. -Izstd/include -I/usr/local/include -DUSE_TYPE_CHECKING_STRICT -D_FORTIFY_SOURCE=3 -DR_NO_REMAP -fpic -g -O2 -Wall -pedantic -mtune=native -c zstd/common/xxhash.cpp -o zstd/common/xxhash.o g++-15 -std=gnu++20 -I"/home/hornik/tmp/R-d-gcc-15/include" -DNDEBUG -Ithrift -I. -Izstd/include -I/usr/local/include -DUSE_TYPE_CHECKING_STRICT -D_FORTIFY_SOURCE=3 -DR_NO_REMAP -fpic -g -O2 -Wall -pedantic -mtune=native -c zstd/common/zstd_common.cpp -o zstd/common/zstd_common.o g++-15 -std=gnu++20 -I"/home/hornik/tmp/R-d-gcc-15/include" -DNDEBUG -Ithrift -I. -Izstd/include -I/usr/local/include -DUSE_TYPE_CHECKING_STRICT -D_FORTIFY_SOURCE=3 -DR_NO_REMAP -fpic -g -O2 -Wall -pedantic -mtune=native -c zstd/decompress/huf_decompress.cpp -o zstd/decompress/huf_decompress.o g++-15 -std=gnu++20 -I"/home/hornik/tmp/R-d-gcc-15/include" -DNDEBUG -Ithrift -I. -Izstd/include -I/usr/local/include -DUSE_TYPE_CHECKING_STRICT -D_FORTIFY_SOURCE=3 -DR_NO_REMAP -fpic -g -O2 -Wall -pedantic -mtune=native -c zstd/decompress/zstd_ddict.cpp -o zstd/decompress/zstd_ddict.o g++-15 -std=gnu++20 -I"/home/hornik/tmp/R-d-gcc-15/include" -DNDEBUG -Ithrift -I. -Izstd/include -I/usr/local/include -DUSE_TYPE_CHECKING_STRICT -D_FORTIFY_SOURCE=3 -DR_NO_REMAP -fpic -g -O2 -Wall -pedantic -mtune=native -c zstd/decompress/zstd_decompress.cpp -o zstd/decompress/zstd_decompress.o g++-15 -std=gnu++20 -I"/home/hornik/tmp/R-d-gcc-15/include" -DNDEBUG -Ithrift -I. -Izstd/include -I/usr/local/include -DUSE_TYPE_CHECKING_STRICT -D_FORTIFY_SOURCE=3 -DR_NO_REMAP -fpic -g -O2 -Wall -pedantic -mtune=native -c zstd/decompress/zstd_decompress_block.cpp -o zstd/decompress/zstd_decompress_block.o g++-15 -std=gnu++20 -I"/home/hornik/tmp/R-d-gcc-15/include" -DNDEBUG -Ithrift -I. -Izstd/include -I/usr/local/include -DUSE_TYPE_CHECKING_STRICT -D_FORTIFY_SOURCE=3 -DR_NO_REMAP -fpic -g -O2 -Wall -pedantic -mtune=native -c zstd/compress/fse_compress.cpp -o zstd/compress/fse_compress.o g++-15 -std=gnu++20 -I"/home/hornik/tmp/R-d-gcc-15/include" -DNDEBUG -Ithrift -I. -Izstd/include -I/usr/local/include -DUSE_TYPE_CHECKING_STRICT -D_FORTIFY_SOURCE=3 -DR_NO_REMAP -fpic -g -O2 -Wall -pedantic -mtune=native -c zstd/compress/hist.cpp -o zstd/compress/hist.o g++-15 -std=gnu++20 -I"/home/hornik/tmp/R-d-gcc-15/include" -DNDEBUG -Ithrift -I. -Izstd/include -I/usr/local/include -DUSE_TYPE_CHECKING_STRICT -D_FORTIFY_SOURCE=3 -DR_NO_REMAP -fpic -g -O2 -Wall -pedantic -mtune=native -c zstd/compress/huf_compress.cpp -o zstd/compress/huf_compress.o g++-15 -std=gnu++20 -I"/home/hornik/tmp/R-d-gcc-15/include" -DNDEBUG -Ithrift -I. -Izstd/include -I/usr/local/include -DUSE_TYPE_CHECKING_STRICT -D_FORTIFY_SOURCE=3 -DR_NO_REMAP -fpic -g -O2 -Wall -pedantic -mtune=native -c zstd/compress/zstd_compress.cpp -o zstd/compress/zstd_compress.o g++-15 -std=gnu++20 -I"/home/hornik/tmp/R-d-gcc-15/include" -DNDEBUG -Ithrift -I. -Izstd/include -I/usr/local/include -DUSE_TYPE_CHECKING_STRICT -D_FORTIFY_SOURCE=3 -DR_NO_REMAP -fpic -g -O2 -Wall -pedantic -mtune=native -c zstd/compress/zstd_compress_literals.cpp -o zstd/compress/zstd_compress_literals.o g++-15 -std=gnu++20 -I"/home/hornik/tmp/R-d-gcc-15/include" -DNDEBUG -Ithrift -I. -Izstd/include -I/usr/local/include -DUSE_TYPE_CHECKING_STRICT -D_FORTIFY_SOURCE=3 -DR_NO_REMAP -fpic -g -O2 -Wall -pedantic -mtune=native -c zstd/compress/zstd_compress_sequences.cpp -o zstd/compress/zstd_compress_sequences.o g++-15 -std=gnu++20 -I"/home/hornik/tmp/R-d-gcc-15/include" -DNDEBUG -Ithrift -I. -Izstd/include -I/usr/local/include -DUSE_TYPE_CHECKING_STRICT -D_FORTIFY_SOURCE=3 -DR_NO_REMAP -fpic -g -O2 -Wall -pedantic -mtune=native -c zstd/compress/zstd_compress_superblock.cpp -o zstd/compress/zstd_compress_superblock.o g++-15 -std=gnu++20 -I"/home/hornik/tmp/R-d-gcc-15/include" -DNDEBUG -Ithrift -I. -Izstd/include -I/usr/local/include -DUSE_TYPE_CHECKING_STRICT -D_FORTIFY_SOURCE=3 -DR_NO_REMAP -fpic -g -O2 -Wall -pedantic -mtune=native -c zstd/compress/zstd_double_fast.cpp -o zstd/compress/zstd_double_fast.o g++-15 -std=gnu++20 -I"/home/hornik/tmp/R-d-gcc-15/include" -DNDEBUG -Ithrift -I. -Izstd/include -I/usr/local/include -DUSE_TYPE_CHECKING_STRICT -D_FORTIFY_SOURCE=3 -DR_NO_REMAP -fpic -g -O2 -Wall -pedantic -mtune=native -c zstd/compress/zstd_fast.cpp -o zstd/compress/zstd_fast.o g++-15 -std=gnu++20 -I"/home/hornik/tmp/R-d-gcc-15/include" -DNDEBUG -Ithrift -I. -Izstd/include -I/usr/local/include -DUSE_TYPE_CHECKING_STRICT -D_FORTIFY_SOURCE=3 -DR_NO_REMAP -fpic -g -O2 -Wall -pedantic -mtune=native -c zstd/compress/zstd_lazy.cpp -o zstd/compress/zstd_lazy.o g++-15 -std=gnu++20 -I"/home/hornik/tmp/R-d-gcc-15/include" -DNDEBUG -Ithrift -I. -Izstd/include -I/usr/local/include -DUSE_TYPE_CHECKING_STRICT -D_FORTIFY_SOURCE=3 -DR_NO_REMAP -fpic -g -O2 -Wall -pedantic -mtune=native -c zstd/compress/zstd_ldm.cpp -o zstd/compress/zstd_ldm.o g++-15 -std=gnu++20 -I"/home/hornik/tmp/R-d-gcc-15/include" -DNDEBUG -Ithrift -I. -Izstd/include -I/usr/local/include -DUSE_TYPE_CHECKING_STRICT -D_FORTIFY_SOURCE=3 -DR_NO_REMAP -fpic -g -O2 -Wall -pedantic -mtune=native -c zstd/compress/zstd_opt.cpp -o zstd/compress/zstd_opt.o g++-15 -std=gnu++20 -shared -L/home/hornik/tmp/R-d-gcc-15/lib -Wl,-O1 -o nanoparquet.so lib/ParquetReader.o RParquetReader.o RParquetAppender.o RParquetOutFile.o r-utils.o rwrapper.o protect.o read2.o write2.o write_stdout.o cpp-utils.o read-metadata.o read-pages.o arrow-schema.o base64.o r-base64.o snappy.o encodings.o dictionary-encoding.o test.o lib/ParquetOutFile.o lib/RleBpDecoder.o parquet/parquet_types.o thrift/protocol/TProtocol.o thrift/transport/TTransportException.o thrift/transport/TBufferTransports.o fastpforlib/bitpacking.o snappy/snappy.o snappy/snappy-sinksource.o miniz/miniz.o zstd/common/entropy_common.o zstd/common/error_private.o zstd/common/fse_decompress.o zstd/common/xxhash.o zstd/common/zstd_common.o zstd/decompress/huf_decompress.o zstd/decompress/zstd_ddict.o zstd/decompress/zstd_decompress.o zstd/decompress/zstd_decompress_block.o zstd/compress/fse_compress.o zstd/compress/hist.o zstd/compress/huf_compress.o zstd/compress/zstd_compress.o zstd/compress/zstd_compress_literals.o zstd/compress/zstd_compress_sequences.o zstd/compress/zstd_compress_superblock.o zstd/compress/zstd_double_fast.o zstd/compress/zstd_fast.o zstd/compress/zstd_lazy.o zstd/compress/zstd_ldm.o zstd/compress/zstd_opt.o -L/home/hornik/tmp/R-d-gcc-15/lib -lR installing via 'install.libs.R' to /home/hornik/tmp/CRAN_recheck/nanoparquet.Rcheck/00LOCK-nanoparquet/00new/nanoparquet ** R ** inst ** byte-compile and prepare package for lazy loading ** help *** installing help indices ** building package indices ** testing if installed package can be loaded from temporary location ** checking absolute paths in shared objects and dynamic libraries ** testing if installed package can be loaded from final location ** testing if installed package keeps a record of temporary installation path * DONE (nanoparquet)