* installing *source* package ‘nanoparquet’ ... ** this is package ‘nanoparquet’ version ‘0.5.0’ ** using staged installation ** libs 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:407:25: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘long unsigned int’} and ‘int32_t’ {aka ‘int’} [-Wsign-compare] 407 | 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:603:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 603 | 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:1047:25: warning: comparison of integer expressions of different signedness: ‘int32_t’ {aka ‘int’} and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 1047 | 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:1141:12: warning: comparison of integer expressions of different signedness: ‘int64_t’ {aka ‘long int’} and ‘long unsigned int’ [-Wsign-compare] 1141 | 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:597:34: required from here 597 | 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:646:31: required from here 646 | dec.GetBatchCount( | ~~~~~~~~~~~~~~~~~~~~~~~~~~^ 647 | (uint8_t*) rep_levels.ptr, | ~~~~~~~~~~~~~~~~~~~~~~~~~~ 648 | dp.num_values | ~~~~~~~~~~~~~ 649 | ); | ~ 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:748:28: required from here 748 | 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:812:27: required from here 812 | 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:897:15: required from here 897 | 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:597:34: required from here 597 | 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:897:15: required from here 897 | 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:241:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 241 | for (auto i = 0; i < filter.columns.size(); i++) { | ~~^~~~~~~~~~~~~~~~~~~~~~~ RParquetReader.cpp:245:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 245 | for (auto i = 1; i < metadata.num_cols; i++) { | ~~^~~~~~~~~~~~~~~~~~~ RParquetReader.cpp: In member function ‘virtual void RParquetReader::alloc_data_page(nanoparquet::DataPage&)’: RParquetReader.cpp:557:38: warning: comparison of integer expressions of different signedness: ‘int’ and ‘unsigned int’ [-Wsign-compare] 557 | for (auto prev_rg = 0; prev_rg < rg; prev_rg++) { | ~~~~~~~~^~~~ 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: In function ‘void convert_column_to_r_dicts(postprocess*, uint32_t)’: RParquetReader.cpp:610:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 610 | 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:664:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 664 | 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:852:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 852 | 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:893:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 893 | 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:924:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 924 | 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:1015:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 1015 | 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:1030:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 1030 | 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:1072:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 1072 | 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:1101:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 1101 | 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:1203:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 1203 | 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:1242:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 1242 | 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:1276:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 1276 | 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:1365:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 1365 | for (auto rg = 0; rg < pp->metadata.num_row_groups; rg++) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ RParquetReader.cpp:1371:26: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 1371 | 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:1387:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 1387 | for (auto rg = 0; rg < pp->metadata.num_row_groups; rg++) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ RParquetReader.cpp:1393:28: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 1393 | 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:1441:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 1441 | for (auto rg = 0; rg < pp->metadata.num_row_groups; rg++) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ RParquetReader.cpp: In function ‘double parse_decimal(uint8_t*, uint32_t)’: RParquetReader.cpp:1500:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 1500 | for (auto j = 0; j < len; j++) { | ~~^~~~~ RParquetReader.cpp:1507:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 1507 | 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:1518:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 1518 | for (auto rg = 0; rg < pp->metadata.num_row_groups; rg++) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ RParquetReader.cpp:1525:26: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 1525 | 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:1534:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 1534 | 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:1562:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 1562 | for (auto rg = 0; rg < pp->metadata.num_row_groups; rg++) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ RParquetReader.cpp:1569:28: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 1569 | 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:1629:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 1629 | for (auto rg = 0; rg < pp->metadata.num_row_groups; rg++) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ RParquetReader.cpp:1635:26: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 1635 | 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:1647:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 1647 | for (auto rg = 0; rg < pp->metadata.num_row_groups; rg++) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ RParquetReader.cpp:1653:28: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 1653 | 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:1694:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 1694 | 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:1747:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 1747 | for (auto rg = 0; rg < pp->metadata.num_row_groups; rg++) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ RParquetReader.cpp:1753:26: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 1753 | 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:1771:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 1771 | for (auto rg = 0; rg < pp->metadata.num_row_groups; rg++) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ RParquetReader.cpp:1777:28: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 1777 | 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:1853:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 1853 | for (auto rg = 0; rg < pp->metadata.num_row_groups; rg++) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ RParquetReader.cpp:1859:26: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 1859 | 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:1870:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 1870 | for (auto rg = 0; rg < pp->metadata.num_row_groups; rg++) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ RParquetReader.cpp:1876:28: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 1876 | 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:1945:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 1945 | 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:1962:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 1962 | 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:2039:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 2039 | for (auto rg = 0; rg < pp->metadata.num_row_groups; rg++) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ RParquetReader.cpp: In function ‘void convert_columns_to_r_(postprocess*)’: RParquetReader.cpp:2104:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 2104 | for (auto cl = 0; cl < pp->metadata.num_cols_to_read; cl++) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ RParquetReader.cpp: In member function ‘void RParquetReader::create_df()’: RParquetReader.cpp:2221:26: warning: comparison of integer expressions of different signedness: ‘R_xlen_t’ {aka ‘long int’} and ‘size_t’ {aka ‘long unsigned int’} [-Wsign-compare] 2221 | for (R_xlen_t i = 0; i < metadata.num_cols; i++) { | ~~^~~~~~~~~~~~~~~~~~~ RParquetReader.cpp: In member function ‘void RParquetReader::read_arrow_metadata()’: RParquetReader.cpp:2256:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 2256 | 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:1222:13: warning: comparison of integer expressions of different signedness: ‘uint64_t’ {aka ‘long unsigned int’} and ‘R_xlen_t’ {aka ‘long int’} [-Wsign-compare] 1222 | 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:1268:13: warning: comparison of integer expressions of different signedness: ‘uint64_t’ {aka ‘long unsigned int’} and ‘R_xlen_t’ {aka ‘long int’} [-Wsign-compare] 1268 | 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:1320:13: warning: comparison of integer expressions of different signedness: ‘uint64_t’ {aka ‘long unsigned int’} and ‘R_xlen_t’ {aka ‘long int’} [-Wsign-compare] 1320 | 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:1393:13: warning: comparison of integer expressions of different signedness: ‘uint64_t’ {aka ‘long unsigned int’} and ‘R_xlen_t’ {aka ‘long int’} [-Wsign-compare] 1393 | 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:1464:13: warning: comparison of integer expressions of different signedness: ‘uint64_t’ {aka ‘long unsigned int’} and ‘R_xlen_t’ {aka ‘long int’} [-Wsign-compare] 1464 | 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:1554:13: warning: comparison of integer expressions of different signedness: ‘uint64_t’ {aka ‘long unsigned int’} and ‘R_xlen_t’ {aka ‘long int’} [-Wsign-compare] 1554 | 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:1657:13: warning: comparison of integer expressions of different signedness: ‘uint64_t’ {aka ‘long unsigned int’} and ‘R_xlen_t’ {aka ‘long int’} [-Wsign-compare] 1657 | if (until > Rf_xlength(col)) { | ~~~~~~^~~~~~~~~~~~~~~~~ RParquetOutFile.cpp: In function ‘void write_boolean_impl(std::ostream&, SEXP, uint64_t, uint64_t)’: RParquetOutFile.cpp:1777:13: warning: comparison of integer expressions of different signedness: ‘uint64_t’ {aka ‘long unsigned int’} and ‘R_xlen_t’ {aka ‘long int’} [-Wsign-compare] 1777 | 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:1832:13: warning: comparison of integer expressions of different signedness: ‘uint64_t’ {aka ‘long unsigned int’} and ‘R_xlen_t’ {aka ‘long int’} [-Wsign-compare] 1832 | 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:2018:13: warning: comparison of integer expressions of different signedness: ‘uint64_t’ {aka ‘long unsigned int’} and ‘R_xlen_t’ {aka ‘long int’} [-Wsign-compare] 2018 | 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:2052:13: warning: comparison of integer expressions of different signedness: ‘uint64_t’ {aka ‘long unsigned int’} and ‘R_xlen_t’ {aka ‘long int’} [-Wsign-compare] 2052 | 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:2644:30: warning: comparison of integer expressions of different signedness: ‘uint64_t’ {aka ‘long unsigned int’} and ‘R_xlen_t’ {aka ‘long int’} [-Wsign-compare] 2644 | for (uint64_t i = 0; i < len; i++) { | ~~^~~~~ RParquetOutFile.cpp:2659:32: warning: comparison of integer expressions of different signedness: ‘uint64_t’ {aka ‘long unsigned int’} and ‘R_xlen_t’ {aka ‘long int’} [-Wsign-compare] 2659 | for (uint64_t i = 0; i < len; i++) { | ~~^~~~~ RParquetOutFile.cpp:2675:32: warning: comparison of integer expressions of different signedness: ‘uint64_t’ {aka ‘long unsigned int’} and ‘R_xlen_t’ {aka ‘long int’} [-Wsign-compare] 2675 | for (uint64_t i = 0; i < len; i++) { | ~~^~~~~ RParquetOutFile.cpp:2678:20: warning: comparison of integer expressions of different signedness: ‘uint32_t’ {aka ‘unsigned int’} and ‘int32_t’ {aka ‘int’} [-Wsign-compare] 2678 | 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:2532:23: warning: ‘max’ may be used uninitialized [-Wmaybe-uninitialized] 2532 | if (val > max) { | ~~~~^~~~~ RParquetOutFile.cpp:2511:22: note: ‘max’ was declared here 2511 | 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:22:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 22 | for (auto cl = 0; cl < reader.present.size(); cl++) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~ read2.cpp:24:26: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 24 | for (auto rg = 0; rg < reader.present[cl].size(); rg++) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ read2.cpp:30:26: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 30 | for (auto rg = 0; rg < reader.present[cl].size(); rg++) { | ~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~ read2.cpp: In function ‘SEXPREC* nanoparquet_read_col_names(SEXP)’: read2.cpp:283:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 283 | for (auto i = 0; i < ncols; i++) { | ~~^~~~~~~ read2.cpp:290:33: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 290 | for (auto i = 0, idx = 0; i < ncols; 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 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:37:13: warning: comparison of integer expressions of different signedness: ‘std::streamsize’ {aka ‘long int’} and ‘uint64_t’ {aka ‘long unsigned int’} [-Wsign-compare] 37 | 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[] = { | ^~~~~~~~~~ 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:37:13: warning: comparison of integer expressions of different signedness: ‘std::streamsize’ {aka ‘long int’} and ‘uint64_t’ {aka ‘long unsigned int’} [-Wsign-compare] 37 | 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:556:25: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 556 | for (int idx = 0; idx < row_group_starts.size(); idx++) { | ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~ lib/ParquetOutFile.cpp:562:25: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 562 | 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:740:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘uint32_t’ {aka ‘unsigned int’} [-Wsign-compare] 740 | for (auto i = 0; i < num_pages; i++) { | ~~^~~~~~~~~~~ lib/ParquetOutFile.cpp:743:20: warning: comparison of integer expressions of different signedness: ‘uint64_t’ {aka ‘long unsigned int’} and ‘int64_t’ {aka ‘long int’} [-Wsign-compare] 743 | 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:528:32: required from here 528 | size_t tgt_size = RleBpEncode( | ~~~~~~~~~~~^ 529 | (int*) src.ptr, | ~~~~~~~~~~~~~~~ 530 | src_size, | ~~~~~~~~~ 531 | bit_width, | ~~~~~~~~~~ 532 | (uint8_t *) tgt.ptr + skip + (add_bit_width ? 1 : 0) + (add_size ? 4 : 0), | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 533 | tgt_size_est | ~~~~~~~~~~~~ 534 | ); | ~ 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 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)