Hi, thanks for this wonderful package. As I was playing around with the r_vector class, I found the following peculiar behavior and I think this might be a bug. Specifically, there should only be 6 elements, but when writing the dimensions to the vector, it returns an error saying there's 8 elements.
cpp11::cpp_function(
"SEXP test() { using namespace cpp11; writable::r_vector<double> vec; // Start empty // Dynamically add data vec.push_back(1.0); vec.push_back(2.0); vec.push_back(3.0); vec.push_back(4.0); vec.push_back(5.0); vec.push_back(6.0); message(\"size: %i\", vec.size()); // Now decide dimensions (2 rows by 3 columns) vec.attr(R_DimSymbol) = writable::r_vector<int>({2, 3}); // Create matrix from the vector // writable::doubles_matrix<> mat(vec.data()); return(vec.attr(R_DimSymbol));}"
)
test()
#> size: 6#> Error in test(): dims [product 6] do not match the length of object [8]Created on 2025-07-21 with reprex v2.1.1
Disclaimer: This example was taken from some code snippets from Claude while I was trying to understand the internals of this package.
Hi, thanks for this wonderful package. As I was playing around with the
r_vectorclass, I found the following peculiar behavior and I think this might be a bug. Specifically, there should only be 6 elements, but when writing the dimensions to the vector, it returns an error saying there's 8 elements.Created on 2025-07-21 with reprex v2.1.1
Disclaimer: This example was taken from some code snippets from Claude while I was trying to understand the internals of this package.