-
Notifications
You must be signed in to change notification settings - Fork 53
Open
Description
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.
Metadata
Metadata
Assignees
Labels
No labels