I am seeing the warnings below when compiling the R bindings on Windows. Most of these seem easy to fix (comparing int with size_t or int32 with int64).
array.cpp: Infunction'Rcpp::LogicalVector Array__Mask(const std::shared_ptr<arrow::Array>&)':
array.cpp:102:24: warning: comparisonofintegerexpressionsofdifferentsignedness: 'size_t' {aka'long long unsigned int'} and'int64_t' {aka'long long int'} [-Wsign-compare]
for (size_ti = 0; i < array->length(); i++, bitmap_reader.Next()) {
~~^~~~~~~~~~~~~~~~~
/mingw64/bin/g++ -std=gnu++11 -I"C:/PROGRA~1/R/R-testing/include" -DNDEBUG -DARROW_STATIC -I"C:/R/library/Rcpp/include" -O2 -Wall -mtune=generic -carray__to_vector.cpp -oarray__to_vector.oarray__to_vector.cpp: Inmemberfunction'virtual arrow::Status arrow::r::Converter_Boolean::Ingest_some_nulls(SEXP, const std::shared_ptr<arrow::Array>&, R_xlen_t, R_xlen_t) const':
array__to_vector.cpp:254:28: warning: comparisonofintegerexpressionsofdifferentsignedness: 'size_t' {aka'long long unsigned int'} and'R_xlen_t' {aka'long long int'} [-Wsign-compare]
for (size_ti = 0; i < n; i++, data_reader.Next(), null_reader.Next(), ++p_data) {
~~^~~
array__to_vector.cpp:258:28: warning: comparisonofintegerexpressionsofdifferentsignedness: 'size_t' {aka'long long unsigned int'} and'R_xlen_t' {aka'long long int'} [-Wsign-compare]
for (size_ti = 0; i < n; i++, data_reader.Next(), ++p_data) {
~~^~~
array__to_vector.cpp: Inmemberfunction'virtual arrow::Status arrow::r::Converter_Decimal::Ingest_some_nulls(SEXP, const std::shared_ptr<arrow::Array>&, R_xlen_t, R_xlen_t) const':
array__to_vector.cpp:473:28: warning: comparisonofintegerexpressionsofdifferentsignedness: 'size_t' {aka'long long unsigned int'} and'R_xlen_t' {aka'long long int'} [-Wsign-compare]
for (size_ti = 0; i < n; i++, bitmap_reader.Next(), ++p_data) {
~~^~~
array__to_vector.cpp:478:28: warning: comparisonofintegerexpressionsofdifferentsignedness: 'size_t' {aka'long long unsigned int'} and'R_xlen_t' {aka'long long int'} [-Wsign-compare]
for (size_ti = 0; i < n; i++, ++p_data) {
~~^~~
array__to_vector.cpp: Inmemberfunction'virtual arrow::Status arrow::r::Converter_Int64::Ingest_some_nulls(SEXP, const std::shared_ptr<arrow::Array>&, R_xlen_t, R_xlen_t) const':
array__to_vector.cpp:515:28: warning: comparisonofintegerexpressionsofdifferentsignedness: 'size_t' {aka'long long unsigned int'} and'R_xlen_t' {aka'long long int'} [-Wsign-compare]
for (size_ti = 0; i < n; i++, bitmap_reader.Next(), ++p_data) {
~~^~~
array__to_vector.cpp: Ininstantiationof'arrow::Status arrow::r::SomeNull_Ingest(SEXP, R_xlen_t, R_xlen_t, const array_value_type*, const std::shared_ptr<arrow::Array>&, Lambda) [with int RTYPE = 14; array_value_type = long long int; Lambda = arrow::r::Converter_Date64::Ingest_some_nulls(SEXP, const std::shared_ptr<arrow::Array>&, R_xlen_t, R_xlen_t) const::<lambda(int64_t)>; SEXP = SEXPREC*; R_xlen_t = long long int]':
array__to_vector.cpp:366:77: requiredfromherearray__to_vector.cpp:116:26: warning: comparisonofintegerexpressionsofdifferentsignedness: 'size_t' {aka'long long unsigned int'} and'R_xlen_t' {aka'long long int'} [-Wsign-compare]
for (size_ti = 0; i < n; i++, bitmap_reader.Next(), ++p_data, ++p_values) {
~~^~~
array__to_vector.cpp: Ininstantiationof'arrow::Status arrow::r::SomeNull_Ingest(SEXP, R_xlen_t, R_xlen_t, const array_value_type*, const std::shared_ptr<arrow::Array>&, Lambda) [with int RTYPE = 13; array_value_type = unsigned char; Lambda = arrow::r::Converter_Dictionary::Ingest_some_nulls_Impl(SEXP, const std::shared_ptr<arrow::Array>&, R_xlen_t, R_xlen_t) const [with Type = arrow::UInt8Type; SEXP = SEXPREC*; R_xlen_t = long long int]::<lambda(value_type)>; SEXP = SEXPREC*; R_xlen_t = long long int]':
array__to_vector.cpp:341:47: requiredfrom'arrow::Status arrow::r::Converter_Dictionary::Ingest_some_nulls_Impl(SEXP, const std::shared_ptr<arrow::Array>&, R_xlen_t, R_xlen_t) const [with Type = arrow::UInt8Type; SEXP = SEXPREC*; R_xlen_t = long long int]'array__to_vector.cpp:313:78: requiredfromherearray__to_vector.cpp:116:26: warning: comparisonofintegerexpressionsofdifferentsignedness: 'size_t' {aka'long long unsigned int'} and'R_xlen_t' {aka'long long int'} [-Wsign-compare]
array__to_vector.cpp: Ininstantiationof'arrow::Status arrow::r::SomeNull_Ingest(SEXP, R_xlen_t, R_xlen_t, const array_value_type*, const std::shared_ptr<arrow::Array>&, Lambda) [with int RTYPE = 13; array_value_type = signed char; Lambda = arrow::r::Converter_Dictionary::Ingest_some_nulls_Impl(SEXP, const std::shared_ptr<arrow::Array>&, R_xlen_t, R_xlen_t) const [with Type = arrow::Int8Type; SEXP = SEXPREC*; R_xlen_t = long long int]::<lambda(value_type)>; SEXP = SEXPREC*; R_xlen_t = long long int]':
array__to_vector.cpp:341:47: requiredfrom'arrow::Status arrow::r::Converter_Dictionary::Ingest_some_nulls_Impl(SEXP, const std::shared_ptr<arrow::Array>&, R_xlen_t, R_xlen_t) const [with Type = arrow::Int8Type; SEXP = SEXPREC*; R_xlen_t = long long int]'array__to_vector.cpp:315:77: requiredfromherearray__to_vector.cpp:116:26: warning: comparisonofintegerexpressionsofdifferentsignedness: 'size_t' {aka'long long unsigned int'} and'R_xlen_t' {aka'long long int'} [-Wsign-compare]
array__to_vector.cpp: Ininstantiationof'arrow::Status arrow::r::SomeNull_Ingest(SEXP, R_xlen_t, R_xlen_t, const array_value_type*, const std::shared_ptr<arrow::Array>&, Lambda) [with int RTYPE = 13; array_value_type = short unsigned int; Lambda = arrow::r::Converter_Dictionary::Ingest_some_nulls_Impl(SEXP, const std::shared_ptr<arrow::Array>&, R_xlen_t, R_xlen_t) const [with Type = arrow::UInt16Type; SEXP = SEXPREC*; R_xlen_t = long long int]::<lambda(value_type)>; SEXP = SEXPREC*; R_xlen_t = long long int]':
array__to_vector.cpp:341:47: requiredfrom'arrow::Status arrow::r::Converter_Dictionary::Ingest_some_nulls_Impl(SEXP, const std::shared_ptr<arrow::Array>&, R_xlen_t, R_xlen_t) const [with Type = arrow::UInt16Type; SEXP = SEXPREC*; R_xlen_t = long long int]'array__to_vector.cpp:317:79: requiredfromherearray__to_vector.cpp:116:26: warning: comparisonofintegerexpressionsofdifferentsignedness: 'size_t' {aka'long long unsigned int'} and'R_xlen_t' {aka'long long int'} [-Wsign-compare]
array__to_vector.cpp: Ininstantiationof'arrow::Status arrow::r::SomeNull_Ingest(SEXP, R_xlen_t, R_xlen_t, const array_value_type*, const std::shared_ptr<arrow::Array>&, Lambda) [with int RTYPE = 13; array_value_type = short int; Lambda = arrow::r::Converter_Dictionary::Ingest_some_nulls_Impl(SEXP, const std::shared_ptr<arrow::Array>&, R_xlen_t, R_xlen_t) const [with Type = arrow::Int16Type; SEXP = SEXPREC*; R_xlen_t = long long int]::<lambda(value_type)>; SEXP = SEXPREC*; R_xlen_t = long long int]':
array__to_vector.cpp:341:47: requiredfrom'arrow::Status arrow::r::Converter_Dictionary::Ingest_some_nulls_Impl(SEXP, const std::shared_ptr<arrow::Array>&, R_xlen_t, R_xlen_t) const [with Type = arrow::Int16Type; SEXP = SEXPREC*; R_xlen_t = long long int]'array__to_vector.cpp:319:78: requiredfromherearray__to_vector.cpp:116:26: warning: comparisonofintegerexpressionsofdifferentsignedness: 'size_t' {aka'long long unsigned int'} and'R_xlen_t' {aka'long long int'} [-Wsign-compare]
array__to_vector.cpp: Ininstantiationof'arrow::Status arrow::r::SomeNull_Ingest(SEXP, R_xlen_t, R_xlen_t, const array_value_type*, const std::shared_ptr<arrow::Array>&, Lambda) [with int RTYPE = 13; array_value_type = int; Lambda = arrow::r::Converter_Dictionary::Ingest_some_nulls_Impl(SEXP, const std::shared_ptr<arrow::Array>&, R_xlen_t, R_xlen_t) const [with Type = arrow::Int32Type; SEXP = SEXPREC*; R_xlen_t = long long int]::<lambda(value_type)>; SEXP = SEXPREC*; R_xlen_t = long long int]':
array__to_vector.cpp:341:47: requiredfrom'arrow::Status arrow::r::Converter_Dictionary::Ingest_some_nulls_Impl(SEXP, const std::shared_ptr<arrow::Array>&, R_xlen_t, R_xlen_t) const [with Type = arrow::Int32Type; SEXP = SEXPREC*; R_xlen_t = long long int]'array__to_vector.cpp:321:78: requiredfromherearray__to_vector.cpp:116:26: warning: comparisonofintegerexpressionsofdifferentsignedness: 'size_t' {aka'long long unsigned int'} and'R_xlen_t' {aka'long long int'} [-Wsign-compare]
array__to_vector.cpp: Ininstantiationof'arrow::Status arrow::r::SomeNull_Ingest(SEXP, R_xlen_t, R_xlen_t, const array_value_type*, const std::shared_ptr<arrow::Array>&, Lambda) [with int RTYPE = 14; array_value_type = long long int; Lambda = arrow::r::Converter_Time<value_type>::Ingest_some_nulls(SEXP, const std::shared_ptr<arrow::Array>&, R_xlen_t, R_xlen_t) const [with value_type = long long int; SEXP = SEXPREC*; R_xlen_t = long long int]::<lambda(long long int)>; SEXP = SEXPREC*; R_xlen_t = long long int]':
array__to_vector.cpp:421:48: requiredfrom'arrow::Status arrow::r::Converter_Time<value_type>::Ingest_some_nulls(SEXP, const std::shared_ptr<arrow::Array>&, R_xlen_t, R_xlen_t) const [with value_type = long long int; SEXP = SEXPREC*; R_xlen_t = long long int]'array__to_vector.cpp:415:10: requiredfromherearray__to_vector.cpp:116:26: warning: comparisonofintegerexpressionsofdifferentsignedness: 'size_t' {aka'long long unsigned int'} and'R_xlen_t' {aka'long long int'} [-Wsign-compare]
array__to_vector.cpp: Ininstantiationof'arrow::Status arrow::r::SomeNull_Ingest(SEXP, R_xlen_t, R_xlen_t, const array_value_type*, const std::shared_ptr<arrow::Array>&, Lambda) [with int RTYPE = 14; array_value_type = int; Lambda = arrow::r::Converter_Time<value_type>::Ingest_some_nulls(SEXP, const std::shared_ptr<arrow::Array>&, R_xlen_t, R_xlen_t) const [with value_type = int; SEXP = SEXPREC*; R_xlen_t = long long int]::<lambda(int)>; SEXP = SEXPREC*; R_xlen_t = long long int]':
array__to_vector.cpp:421:48: requiredfrom'arrow::Status arrow::r::Converter_Time<value_type>::Ingest_some_nulls(SEXP, const std::shared_ptr<arrow::Array>&, R_xlen_t, R_xlen_t) const [with value_type = int; SEXP = SEXPREC*; R_xlen_t = long long int]'array__to_vector.cpp:415:10: requiredfromherearray__to_vector.cpp:116:26: warning: comparisonofintegerexpressionsofdifferentsignedness: 'size_t' {aka'long long unsigned int'} and'R_xlen_t' {aka'long long int'} [-Wsign-compare]
array__to_vector.cpp: Ininstantiationof'arrow::Status arrow::r::SomeNull_Ingest(SEXP, R_xlen_t, R_xlen_t, const array_value_type*, const std::shared_ptr<arrow::Array>&, Lambda) [with int RTYPE = 14; array_value_type = float; Lambda = arrow::r::Converter_Promotion<RTYPE, Type>::Ingest_some_nulls(SEXP, const std::shared_ptr<arrow::Array>&, R_xlen_t, R_xlen_t) const [with int RTYPE = 14; Type = arrow::FloatType; SEXP = SEXPREC*; R_xlen_t = long long int]::<lambda(arrow::r::Converter_Promotion<14, arrow::FloatType>::value_type)>; SEXP = SEXPREC*; R_xlen_t = long long int]':
array__to_vector.cpp:389:46: requiredfrom'arrow::Status arrow::r::Converter_Promotion<RTYPE, Type>::Ingest_some_nulls(SEXP, const std::shared_ptr<arrow::Array>&, R_xlen_t, R_xlen_t) const [with int RTYPE = 14; Type = arrow::FloatType; SEXP = SEXPREC*; R_xlen_t = long long int]'array__to_vector.cpp:386:10: requiredfromherearray__to_vector.cpp:116:26: warning: comparisonofintegerexpressionsofdifferentsignedness: 'size_t' {aka'long long unsigned int'} and'R_xlen_t' {aka'long long int'} [-Wsign-compare]
array__to_vector.cpp: Ininstantiationof'arrow::Status arrow::r::SomeNull_Ingest(SEXP, R_xlen_t, R_xlen_t, const array_value_type*, const std::shared_ptr<arrow::Array>&, Lambda) [with int RTYPE = 14; array_value_type = short unsigned int; Lambda = arrow::r::Converter_Promotion<RTYPE, Type>::Ingest_some_nulls(SEXP, const std::shared_ptr<arrow::Array>&, R_xlen_t, R_xlen_t) const [with int RTYPE = 14; Type = arrow::HalfFloatType; SEXP = SEXPREC*; R_xlen_t = long long int]::<lambda(arrow::r::Converter_Promotion<14, arrow::HalfFloatType>::value_type)>; SEXP = SEXPREC*; R_xlen_t = long long int]':
array__to_vector.cpp:389:46: requiredfrom'arrow::Status arrow::r::Converter_Promotion<RTYPE, Type>::Ingest_some_nulls(SEXP, const std::shared_ptr<arrow::Array>&, R_xlen_t, R_xlen_t) const [with int RTYPE = 14; Type = arrow::HalfFloatType; SEXP = SEXPREC*; R_xlen_t = long long int]'array__to_vector.cpp:386:10: requiredfromherearray__to_vector.cpp:116:26: warning: comparisonofintegerexpressionsofdifferentsignedness: 'size_t' {aka'long long unsigned int'} and'R_xlen_t' {aka'long long int'} [-Wsign-compare]
array__to_vector.cpp: Ininstantiationof'arrow::Status arrow::r::SomeNull_Ingest(SEXP, R_xlen_t, R_xlen_t, const array_value_type*, const std::shared_ptr<arrow::Array>&, Lambda) [with int RTYPE = 14; array_value_type = unsigned int; Lambda = arrow::r::Converter_Promotion<RTYPE, Type>::Ingest_some_nulls(SEXP, const std::shared_ptr<arrow::Array>&, R_xlen_t, R_xlen_t) const [with int RTYPE = 14; Type = arrow::UInt32Type; SEXP = SEXPREC*; R_xlen_t = long long int]::<lambda(arrow::r::Converter_Promotion<14, arrow::UInt32Type>::value_type)>; SEXP = SEXPREC*; R_xlen_t = long long int]':
array__to_vector.cpp:389:46: requiredfrom'arrow::Status arrow::r::Converter_Promotion<RTYPE, Type>::Ingest_some_nulls(SEXP, const std::shared_ptr<arrow::Array>&, R_xlen_t, R_xlen_t) const [with int RTYPE = 14; Type = arrow::UInt32Type; SEXP = SEXPREC*; R_xlen_t = long long int]'array__to_vector.cpp:386:10: requiredfromherearray__to_vector.cpp:116:26: warning: comparisonofintegerexpressionsofdifferentsignedness: 'size_t' {aka'long long unsigned int'} and'R_xlen_t' {aka'long long int'} [-Wsign-compare]
array__to_vector.cpp: Ininstantiationof'arrow::Status arrow::r::SomeNull_Ingest(SEXP, R_xlen_t, R_xlen_t, const array_value_type*, const std::shared_ptr<arrow::Array>&, Lambda) [with int RTYPE = 13; array_value_type = short unsigned int; Lambda = arrow::r::Converter_Promotion<RTYPE, Type>::Ingest_some_nulls(SEXP, const std::shared_ptr<arrow::Array>&, R_xlen_t, R_xlen_t) const [with int RTYPE = 13; Type = arrow::UInt16Type; SEXP = SEXPREC*; R_xlen_t = long long int]::<lambda(arrow::r::Converter_Promotion<13, arrow::UInt16Type>::value_type)>; SEXP = SEXPREC*; R_xlen_t = long long int]':
array__to_vector.cpp:389:46: requiredfrom'arrow::Status arrow::r::Converter_Promotion<RTYPE, Type>::Ingest_some_nulls(SEXP, const std::shared_ptr<arrow::Array>&, R_xlen_t, R_xlen_t) const [with int RTYPE = 13; Type = arrow::UInt16Type; SEXP = SEXPREC*; R_xlen_t = long long int]'array__to_vector.cpp:386:10: requiredfromherearray__to_vector.cpp:116:26: warning: comparisonofintegerexpressionsofdifferentsignedness: 'size_t' {aka'long long unsigned int'} and'R_xlen_t' {aka'long long int'} [-Wsign-compare]
array__to_vector.cpp: Ininstantiationof'arrow::Status arrow::r::SomeNull_Ingest(SEXP, R_xlen_t, R_xlen_t, const array_value_type*, const std::shared_ptr<arrow::Array>&, Lambda) [with int RTYPE = 13; array_value_type = short int; Lambda = arrow::r::Converter_Promotion<RTYPE, Type>::Ingest_some_nulls(SEXP, const std::shared_ptr<arrow::Array>&, R_xlen_t, R_xlen_t) const [with int RTYPE = 13; Type = arrow::Int16Type; SEXP = SEXPREC*; R_xlen_t = long long int]::<lambda(arrow::r::Converter_Promotion<13, arrow::Int16Type>::value_type)>; SEXP = SEXPREC*; R_xlen_t = long long int]':
array__to_vector.cpp:389:46: requiredfrom'arrow::Status arrow::r::Converter_Promotion<RTYPE, Type>::Ingest_some_nulls(SEXP, const std::shared_ptr<arrow::Array>&, R_xlen_t, R_xlen_t) const [with int RTYPE = 13; Type = arrow::Int16Type; SEXP = SEXPREC*; R_xlen_t = long long int]'array__to_vector.cpp:386:10: requiredfromherearray__to_vector.cpp:116:26: warning: comparisonofintegerexpressionsofdifferentsignedness: 'size_t' {aka'long long unsigned int'} and'R_xlen_t' {aka'long long int'} [-Wsign-compare]
array__to_vector.cpp: Ininstantiationof'arrow::Status arrow::r::SomeNull_Ingest(SEXP, R_xlen_t, R_xlen_t, const array_value_type*, const std::shared_ptr<arrow::Array>&, Lambda) [with int RTYPE = 13; array_value_type = unsigned char; Lambda = arrow::r::Converter_Promotion<RTYPE, Type>::Ingest_some_nulls(SEXP, const std::shared_ptr<arrow::Array>&, R_xlen_t, R_xlen_t) const [with int RTYPE = 13; Type = arrow::UInt8Type; SEXP = SEXPREC*; R_xlen_t = long long int]::<lambda(arrow::r::Converter_Promotion<13, arrow::UInt8Type>::value_type)>; SEXP = SEXPREC*; R_xlen_t = long long int]':
array__to_vector.cpp:389:46: requiredfrom'arrow::Status arrow::r::Converter_Promotion<RTYPE, Type>::Ingest_some_nulls(SEXP, const std::shared_ptr<arrow::Array>&, R_xlen_t, R_xlen_t) const [with int RTYPE = 13; Type = arrow::UInt8Type; SEXP = SEXPREC*; R_xlen_t = long long int]'array__to_vector.cpp:386:10: requiredfromherearray__to_vector.cpp:116:26: warning: comparisonofintegerexpressionsofdifferentsignedness: 'size_t' {aka'long long unsigned int'} and'R_xlen_t' {aka'long long int'} [-Wsign-compare]
array__to_vector.cpp: Ininstantiationof'arrow::Status arrow::r::SomeNull_Ingest(SEXP, R_xlen_t, R_xlen_t, const array_value_type*, const std::shared_ptr<arrow::Array>&, Lambda) [with int RTYPE = 14; array_value_type = double; Lambda = arrow::r::Converter_SimpleArray<RTYPE>::Ingest_some_nulls(SEXP, const std::shared_ptr<arrow::Array>&, R_xlen_t, R_xlen_t) const [with int RTYPE = 14; SEXP = SEXPREC*; R_xlen_t = long long int]::<lambda(arrow::r::Converter_SimpleArray<14>::value_type)>; SEXP = SEXPREC*; R_xlen_t = long long int]':
array__to_vector.cpp:152:46: requiredfrom'arrow::Status arrow::r::Converter_SimpleArray<RTYPE>::Ingest_some_nulls(SEXP, const std::shared_ptr<arrow::Array>&, R_xlen_t, R_xlen_t) const [with int RTYPE = 14; SEXP = SEXPREC*; R_xlen_t = long long int]'array__to_vector.cpp:148:10: requiredfromherearray__to_vector.cpp:116:26: warning: comparisonofintegerexpressionsofdifferentsignedness: 'size_t' {aka'long long unsigned int'} and'R_xlen_t' {aka'long long int'} [-Wsign-compare]
array__to_vector.cpp: Ininstantiationof'arrow::Status arrow::r::SomeNull_Ingest(SEXP, R_xlen_t, R_xlen_t, const array_value_type*, const std::shared_ptr<arrow::Array>&, Lambda) [with int RTYPE = 24; array_value_type = unsigned char; Lambda = arrow::r::Converter_SimpleArray<RTYPE>::Ingest_some_nulls(SEXP, const std::shared_ptr<arrow::Array>&, R_xlen_t, R_xlen_t) const [with int RTYPE = 24; SEXP = SEXPREC*; R_xlen_t = long long int]::<lambda(arrow::r::Converter_SimpleArray<24>::value_type)>; SEXP = SEXPREC*; R_xlen_t = long long int]':
array__to_vector.cpp:152:46: requiredfrom'arrow::Status arrow::r::Converter_SimpleArray<RTYPE>::Ingest_some_nulls(SEXP, const std::shared_ptr<arrow::Array>&, R_xlen_t, R_xlen_t) const [with int RTYPE = 24; SEXP = SEXPREC*; R_xlen_t = long long int]'array__to_vector.cpp:148:10: requiredfromherearray__to_vector.cpp:116:26: warning: comparisonofintegerexpressionsofdifferentsignedness: 'size_t' {aka'long long unsigned int'} and'R_xlen_t' {aka'long long int'} [-Wsign-compare]
array__to_vector.cpp: Ininstantiationof'arrow::Status arrow::r::SomeNull_Ingest(SEXP, R_xlen_t, R_xlen_t, const array_value_type*, const std::shared_ptr<arrow::Array>&, Lambda) [with int RTYPE = 13; array_value_type = int; Lambda = arrow::r::Converter_SimpleArray<RTYPE>::Ingest_some_nulls(SEXP, const std::shared_ptr<arrow::Array>&, R_xlen_t, R_xlen_t) const [with int RTYPE = 13; SEXP = SEXPREC*; R_xlen_t = long long int]::<lambda(arrow::r::Converter_SimpleArray<13>::value_type)>; SEXP = SEXPREC*; R_xlen_t = long long int]':
array__to_vector.cpp:152:46: requiredfrom'arrow::Status arrow::r::Converter_SimpleArray<RTYPE>::Ingest_some_nulls(SEXP, const std::shared_ptr<arrow::Array>&, R_xlen_t, R_xlen_t) const [with int RTYPE = 13; SEXP = SEXPREC*; R_xlen_t = long long int]'array__to_vector.cpp:148:10: requiredfromherearray__to_vector.cpp:116:26: warning: comparisonofintegerexpressionsofdifferentsignedness: 'size_t' {aka'long long unsigned int'} and'R_xlen_t' {aka'long long int'} [-Wsign-compare]
array__to_vector.cpp: Inmemberfunction'int arrow::r::Converter_Time<value_type>::TimeUnit_multiplier(const std::shared_ptr<arrow::Array>&) const [with value_type = long long int]':
array__to_vector.cpp:437:3: warning: controlreachesendofnon-voidfunction [-Wreturn-type]
}
^
array__to_vector.cpp: Inmemberfunction'int arrow::r::Converter_Time<value_type>::TimeUnit_multiplier(const std::shared_ptr<arrow::Array>&) const [with value_type = int]':
array__to_vector.cpp:437:3: warning: controlreachesendofnon-voidfunction [-Wreturn-type]
/mingw64/bin/g++ -std=gnu++11 -I"C:/PROGRA~1/R/R-testing/include" -DNDEBUG -DARROW_STATIC -I"C:/R/library/Rcpp/include" -O2 -Wall -mtune=generic -carray_from_vector.cpp -oarray_from_vector.oarray_from_vector.cpp: Ininstantiationof'arrow::Status arrow::internal::int_cast(T, Target*) [with T = int; Target = long long unsigned int]':
array_from_vector.cpp:301:9: requiredfrom'static arrow::Status arrow::r::Unbox<Type, typename std::enable_if<std::is_base_of<arrow::Integer, T>::value>::type>::IngestRange(arrow::r::Unbox<Type, typename std::enable_if<std::is_base_of<arrow::Integer, T>::value>::type>::BuilderType*, T*, R_xlen_t, T) [with T = int; Type = arrow::UInt64Type; arrow::r::Unbox<Type, typename std::enable_if<std::is_base_of<arrow::Integer, T>::value>::type>::BuilderType = arrow::NumericBuilder<arrow::UInt64Type>; R_xlen_t = long long int]'array_from_vector.cpp:277:32: requiredfrom'static arrow::Status arrow::r::Unbox<Type, typename std::enable_if<std::is_base_of<arrow::Integer, T>::value>::type>::Ingest(arrow::r::Unbox<Type, typename std::enable_if<std::is_base_of<arrow::Integer, T>::value>::type>::BuilderType*, SEXP) [with Type = arrow::UInt64Type; arrow::r::Unbox<Type, typename std::enable_if<std::is_base_of<arrow::Integer, T>::value>::type>::BuilderType = arrow::NumericBuilder<arrow::UInt64Type>; SEXP = SEXPREC*]'array_from_vector.cpp:542:64: requiredfrom'arrow::Status arrow::r::TypedVectorConverter<Type, Derived>::Ingest(SEXP) [with Type = arrow::UInt64Type; Derived = arrow::r::NumericVectorConverter<arrow::UInt64Type>; SEXP = SEXPREC*]'array_from_vector.cpp:542:10: requiredfromherearray_from_vector.cpp:187:9: warning: comparisonofintegerexpressionsofdifferentsignedness: 'int'and'long long unsigned int' [-Wsign-compare]
if (x < std::numeric_limits<Target>::min() || x > std::numeric_limits<Target>::max()) {
~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
array_from_vector.cpp:187:51: warning: comparisonofintegerexpressionsofdifferentsignedness: 'int'and'long long unsigned int' [-Wsign-compare]
if (x < std::numeric_limits<Target>::min() || x > std::numeric_limits<Target>::max()) {
~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
array_from_vector.cpp: Ininstantiationof'arrow::Status arrow::internal::int_cast(T, Target*) [with T = long long int; Target = long long unsigned int]':
array_from_vector.cpp:301:9: requiredfrom'static arrow::Status arrow::r::Unbox<Type, typename std::enable_if<std::is_base_of<arrow::Integer, T>::value>::type>::IngestRange(arrow::r::Unbox<Type, typename std::enable_if<std::is_base_of<arrow::Integer, T>::value>::type>::BuilderType*, T*, R_xlen_t, T) [with T = long long int; Type = arrow::UInt64Type; arrow::r::Unbox<Type, typename std::enable_if<std::is_base_of<arrow::Integer, T>::value>::type>::BuilderType = arrow::NumericBuilder<arrow::UInt64Type>; R_xlen_t = long long int]'array_from_vector.cpp:280:38: requiredfrom'static arrow::Status arrow::r::Unbox<Type, typename std::enable_if<std::is_base_of<arrow::Integer, T>::value>::type>::Ingest(arrow::r::Unbox<Type, typename std::enable_if<std::is_base_of<arrow::Integer, T>::value>::type>::BuilderType*, SEXP) [with Type = arrow::UInt64Type; arrow::r::Unbox<Type, typename std::enable_if<std::is_base_of<arrow::Integer, T>::value>::type>::BuilderType = arrow::NumericBuilder<arrow::UInt64Type>; SEXP = SEXPREC*]'array_from_vector.cpp:542:64: requiredfrom'arrow::Status arrow::r::TypedVectorConverter<Type, Derived>::Ingest(SEXP) [with Type = arrow::UInt64Type; Derived = arrow::r::NumericVectorConverter<arrow::UInt64Type>; SEXP = SEXPREC*]'array_from_vector.cpp:542:10: requiredfromherearray_from_vector.cpp:187:9: warning: comparisonofintegerexpressionsofdifferentsignedness: 'long long int'and'long long unsigned int' [-Wsign-compare]
if (x < std::numeric_limits<Target>::min() || x > std::numeric_limits<Target>::max()) {
~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
array_from_vector.cpp:187:51: warning: comparisonofintegerexpressionsofdifferentsignedness: 'long long int'and'long long unsigned int' [-Wsign-compare]
if (x < std::numeric_limits<Target>::min() || x > std::numeric_limits<Target>::max()) {
~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
array_from_vector.cpp: Ininstantiationof'arrow::Status arrow::internal::int_cast(T, Target*) [with T = int; Target = unsigned int]':
array_from_vector.cpp:301:9: requiredfrom'static arrow::Status arrow::r::Unbox<Type, typename std::enable_if<std::is_base_of<arrow::Integer, T>::value>::type>::IngestRange(arrow::r::Unbox<Type, typename std::enable_if<std::is_base_of<arrow::Integer, T>::value>::type>::BuilderType*, T*, R_xlen_t, T) [with T = int; Type = arrow::UInt32Type; arrow::r::Unbox<Type, typename std::enable_if<std::is_base_of<arrow::Integer, T>::value>::type>::BuilderType = arrow::NumericBuilder<arrow::UInt32Type>; R_xlen_t = long long int]'array_from_vector.cpp:277:32: requiredfrom'static arrow::Status arrow::r::Unbox<Type, typename std::enable_if<std::is_base_of<arrow::Integer, T>::value>::type>::Ingest(arrow::r::Unbox<Type, typename std::enable_if<std::is_base_of<arrow::Integer, T>::value>::type>::BuilderType*, SEXP) [with Type = arrow::UInt32Type; arrow::r::Unbox<Type, typename std::enable_if<std::is_base_of<arrow::Integer, T>::value>::type>::BuilderType = arrow::NumericBuilder<arrow::UInt32Type>; SEXP = SEXPREC*]'array_from_vector.cpp:542:64: requiredfrom'arrow::Status arrow::r::TypedVectorConverter<Type, Derived>::Ingest(SEXP) [with Type = arrow::UInt32Type; Derived = arrow::r::NumericVectorConverter<arrow::UInt32Type>; SEXP = SEXPREC*]'array_from_vector.cpp:542:10: requiredfromherearray_from_vector.cpp:187:9: warning: comparisonofintegerexpressionsofdifferentsignedness: 'int'and'unsigned int' [-Wsign-compare]
if (x < std::numeric_limits<Target>::min() || x > std::numeric_limits<Target>::max()) {
~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
array_from_vector.cpp:187:51: warning: comparisonofintegerexpressionsofdifferentsignedness: 'int'and'unsigned int' [-Wsign-compare]
if (x < std::numeric_limits<Target>::min() || x > std::numeric_limits<Target>::max()) {
~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
array_from_vector.cpp: Infunction'int64_t arrow::r::get_time_multiplier(arrow::TimeUnit::type)':
array_from_vector.cpp:569:1: warning: controlreachesendofnon-voidfunction [-Wreturn-type]
}
^
array_from_vector.cpp: Inmemberfunction'arrow::Status arrow::r::TypedVectorConverter<Type, Derived>::Ingest(SEXP) [with Type = arrow::DoubleType; Derived = arrow::r::NumericVectorConverter<arrow::DoubleType>]':
array_from_vector.cpp:333:16: warning: 'value'maybeuseduninitializedinthisfunction [-Wmaybe-uninitialized]
double value;
^~~~~
array_from_vector.cpp: Inmemberfunction'arrow::Status arrow::r::TypedVectorConverter<Type, Derived>::Ingest(SEXP) [with Type = arrow::FloatType; Derived = arrow::r::NumericVectorConverter<arrow::FloatType>]':
array_from_vector.cpp:378:15: warning: 'value'maybeuseduninitializedinthisfunction [-Wmaybe-uninitialized]
floatvalue;
^~~~~
array_from_vector.cpp:378:15: warning: 'value'maybeuseduninitializedinthisfunction [-Wmaybe-uninitialized]
array_from_vector.cpp: Inmemberfunction'arrow::Status arrow::r::TypedVectorConverter<Type, Derived>::Ingest(SEXP) [with Type = arrow::Int8Type; Derived = arrow::r::NumericVectorConverter<arrow::Int8Type>]':
array_from_vector.cpp:300:15: warning: 'value'maybeuseduninitializedinthisfunction [-Wmaybe-uninitialized]
CTypevalue;
^~~~~
array_from_vector.cpp:300:15: warning: 'value'maybeuseduninitializedinthisfunction [-Wmaybe-uninitialized]
array_from_vector.cpp: Inmemberfunction'arrow::Status arrow::r::TypedVectorConverter<Type, Derived>::Ingest(SEXP) [with Type = arrow::Int32Type; Derived = arrow::r::NumericVectorConverter<arrow::Int32Type>]':
array_from_vector.cpp:300:15: warning: 'value'maybeuseduninitializedinthisfunction [-Wmaybe-uninitialized]
array_from_vector.cpp: Inmemberfunction'arrow::Status arrow::r::TypedVectorConverter<Type, Derived>::Ingest(SEXP) [with Type = arrow::Int16Type; Derived = arrow::r::NumericVectorConverter<arrow::Int16Type>]':
array_from_vector.cpp:300:15: warning: 'value'maybeuseduninitializedinthisfunction [-Wmaybe-uninitialized]
array_from_vector.cpp:300:15: warning: 'value'maybeuseduninitializedinthisfunction [-Wmaybe-uninitialized]
I am seeing the warnings below when compiling the R bindings on Windows. Most of these seem easy to fix (comparing int with size_t or int32 with int64).
Reporter: Jeroen / @jeroen
Assignee: Romain Francois / @romainfrancois
PRs and other links:
Note: This issue was originally created as ARROW-4845. Please see the migration documentation for further details.