Closed chainsawriot closed 5 months ago
The Docker version doesn't match.
Rchk version: 1cae90e208e97a5c41f1c3e128d99b197478443e
R version: 84255/R Under development (unstable) (2023-04-13 r84255)
LLVM version: 14.0.0
Changing to this
template <typename T>
inline r_vector<T>::operator SEXP() const {
auto* p = const_cast<r_vector<T>*>(this);
if (data_ == R_NilValue) {
p->resize(0);
return data_;
}
if (length_ < capacity_) {
p->data_ = truncate(p->data_, length_, capacity_);
SEXP nms;
PROTECT(nms = names());
auto nms_size = Rf_xlength(nms);
if ((nms_size > 0) && (length_ < nms_size)) {
nms = truncate(nms, length_, capacity_);
names() = nms;
}
UNPROTECT(1);
}
return data_;
}
does not raise the rchk
issues. But I also need to check valgrind
.
can't run rchk
on duckdb
. Don't know whether I should inform the developers of duckdb
, which also uses the same method.
valgrind
is triple zero.
Now I can directly attribute the rchk
issues to the fix.
And this cancels the rchk
issues.
https://raw.githubusercontent.com/kalibera/cran-checks/master/rchk/results/readODS.out
Cannot reproduce it locally.