R Under development (unstable) (2026-07-04 r90207) -- "Unsuffered Consequences" Copyright (C) 2026 The R Foundation for Statistical Computing Platform: x86_64-pc-linux-gnu R is free software and comes with ABSOLUTELY NO WARRANTY. You are welcome to redistribute it under certain conditions. Type 'license()' or 'licence()' for distribution details. R is a collaborative project with many contributors. Type 'contributors()' for more information and 'citation()' on how to cite R or R packages in publications. Type 'demo()' for some demos, 'help()' for on-line help, or 'help.start()' for an HTML browser interface to help. Type 'q()' to quit R. > if (.Platform$OS.type != "windows") { + + library(lme4) + library(testthat) + + source(system.file("testdata/lme-tst-funs.R", package="lme4", mustWork=TRUE)) + ##-> gSim(), a general simulation function ... + + ## hand-coded Pearson residuals {for sumFun() } + mypresid <- function(x) { + mu <- fitted(x) + (getME(x,"y") - mu) * sqrt(weights(x)) / sqrt(x@resp$family$variance(mu)) + } + + ## should be equal (up to numerical error) to weights(.,type="working") + workingWeights <- function(mod) mod@resp$weights*(mod@resp$muEta()^2)/mod@resp$variance() + + ##' Sum of weighted residuals, 4 ways; the last three are identical + sumFun <- function(m) { + wrss1 <- m@devcomp$cmp["wrss"] + wrss2 <- sum(residuals(m,type="pearson")^2) + wrss3 <- sum(m@resp$wtres^2) + ## compare to hand-fitted Pearson resids ... + wrss4 <- sum(mypresid(m)^2) + c(wrss1,wrss2,wrss3,wrss4) + } + ## The relative "error"/differences of the weights w[] entries + rel.diff <- function(w) abs(1 - w[-1]/w[1]) + + set.seed(101) + + ## GAMMA + g0 <- glmer(y~x+(1|block),data=gSim(),family=Gamma) + expect_true(all(rel.diff(sumFun(g0)) < 1e-13)) + expect_equal(weights(g0, type = "working"), workingWeights(g0), + tolerance = 1e-4) ## FIXME: why is such a high tolerance required? + + ## BERNOULLI + g1 <- glmer(y~x+(1|block),data=gSim(family=binomial(),nbinom=1), + family=binomial) + expect_true(all(rel.diff(sumFun(g1)) < 1e-13)) + expect_equal(weights(g1, type = "working"), workingWeights(g1), + tolerance = 1e-5) ## FIXME: why is such a high tolerance required? + + + ## POISSON + (n <- nrow(d.P <- gSim(family=poisson()))) + g2 <- glmer(y ~ x + (1|block), data = d.P, family=poisson) + g2W <- glmer(y ~ x + (1|block), data = d.P, family=poisson, weights = rep(2,n)) + expect_true(all(rel.diff(sumFun(g2 )) < 1e-13)) + expect_true(all(rel.diff(sumFun(g2W)) < 1e-13)) + ## correct + expect_equal(weights(g2, type = "working"), workingWeights(g2), + tolerance = 1e-5) ## FIXME: why is such a high tolerance required? + expect_equal(weights(g2W, type = "working"), workingWeights(g2W), + tolerance = 1e-5) ## FIXME: why is such a high tolerance required? + + + ## non-Bernoulli BINOMIAL + g3 <- glmer(y ~ x + (1|block), data= gSim(family=binomial(), nbinom=10), + family=binomial) + expect_true(all(rel.diff(sumFun(g3)) < 1e-13)) + expect_equal(weights(g3, type = "working"), workingWeights(g3), + tolerance = 1e-4) ## FIXME: why is such a high tolerance required? + + + + d.b.2 <- gSim(nperblk = 2, family=binomial()) + g.b.2 <- glmer(y ~ x + (1|block), data=d.b.2, family=binomial) + + expect_true(all(rel.diff(sumFun(g.b.2 )) < 1e-13)) + + + ## Many blocks of only 2 observations each - (but nicely balanced) + ## Want this "as" https://github.com/lme4/lme4/issues/47 + ## (but it "FAILS" survival already): + ## + ## n2 = n/2 : + n2 <- 2048 + if(FALSE) + n2 <- 100 # for building/testing + set.seed(47) + dB2 <- gSim(n2, nperblk = 2, x= rep(0:1, each= n2), family=binomial()) + ## -- -- --- -------- + gB2 <- glmer(y ~ x + (1|block), data=dB2, family=binomial) + expect_true(all(rel.diff(sumFun(gB2)) < 1e-13)) + + ## NB: Finite sample bias of \hat\sigma_1 and \hat\beta_1 ("Intercept") + ## tend to zero only slowly for n2 -> Inf, e.g., for + ## n2 = 2048, b1 ~= 4.3 (instead of 4); s1 ~= 1.3 (instead of 1) + + ## FAILS ----- + ## library(survival) + ## (gSurv.B2 <- clogit(y ~ x + strata(block), data=dB2)) + ## ## --> Error in Surv(rep(1, 200L), y) : Time and status are different lengths + ## summary(gSurv.B2) + ## (SE.surf <- sqrt(diag(vcov(gSurv.B2)))) + + + + g3 <- glmer(y ~ x + (1|block),data=gSim(family=binomial(),nbinom=10), + family=binomial) + expect_equal(var(sumFun(g3)),0) + + ## check dispersion parameter + ## (lowered tolerance to pass checks on my machine -- SCW) + expect_equal(sigma(g0)^2, 0.4888248, tolerance=1e-4) + + } ## skip on windows (for speed) Loading required package: Matrix ================================================================= ==3925487==ERROR: AddressSanitizer: heap-use-after-free on address 0x7e6b211a0430 at pc 0x7b8b09fd0d9d bp 0x7fff8d1d94b0 sp 0x7fff8d1d94a8 READ of size 8 at 0x7e6b211a0430 thread T0 #0 0x7b8b09fd0d9c in Eigen::internal::product_evaluator, 0, Eigen::Stride<0, 0> > const>, Eigen::Map, 0, Eigen::Stride<0, 0> >, 1>, 8, Eigen::DiagonalShape, Eigen::DenseShape, double, double>::coeff(long, long) const /data/gannet/ripley/R/test-dev/RcppEigen/include/Eigen/src/Core/ProductEvaluators.h:925 #1 0x7b8b09fd0d9c in Eigen::internal::generic_dense_assignment_kernel, 0, Eigen::Stride<0, 0> > >, Eigen::internal::evaluator, 0, Eigen::Stride<0, 0> > const>, Eigen::Map, 0, Eigen::Stride<0, 0> >, 1> >, Eigen::internal::assign_op, 0>::assignCoeff(long, long) /data/gannet/ripley/R/test-dev/RcppEigen/include/Eigen/src/Core/AssignEvaluator.h:654 #2 0x7b8b09fd0d9c in Eigen::internal::generic_dense_assignment_kernel, 0, Eigen::Stride<0, 0> > >, Eigen::internal::evaluator, 0, Eigen::Stride<0, 0> > const>, Eigen::Map, 0, Eigen::Stride<0, 0> >, 1> >, Eigen::internal::assign_op, 0>::assignCoeffByOuterInner(long, long) /data/gannet/ripley/R/test-dev/RcppEigen/include/Eigen/src/Core/AssignEvaluator.h:668 #3 0x7b8b09fd0d9c in Eigen::internal::dense_assignment_loop, 0, Eigen::Stride<0, 0> > >, Eigen::internal::evaluator, 0, Eigen::Stride<0, 0> > const>, Eigen::Map, 0, Eigen::Stride<0, 0> >, 1> >, Eigen::internal::assign_op, 0>, 0, 0>::run(Eigen::internal::generic_dense_assignment_kernel, 0, Eigen::Stride<0, 0> > >, Eigen::internal::evaluator, 0, Eigen::Stride<0, 0> > const>, Eigen::Map, 0, Eigen::Stride<0, 0> >, 1> >, Eigen::internal::assign_op, 0>&) /data/gannet/ripley/R/test-dev/RcppEigen/include/Eigen/src/Core/AssignEvaluator.h:347 #4 0x7b8b09fd0d9c in void Eigen::internal::call_dense_assignment_loop, 0, Eigen::Stride<0, 0> >, Eigen::Product, 0, Eigen::Stride<0, 0> > const>, Eigen::Map, 0, Eigen::Stride<0, 0> >, 1>, Eigen::internal::assign_op >(Eigen::Map, 0, Eigen::Stride<0, 0> >&, Eigen::Product, 0, Eigen::Stride<0, 0> > const>, Eigen::Map, 0, Eigen::Stride<0, 0> >, 1> const&, Eigen::internal::assign_op const&) /data/gannet/ripley/R/test-dev/RcppEigen/include/Eigen/src/Core/AssignEvaluator.h:785 #5 0x7b8b09fd0d9c in Eigen::internal::Assignment, 0, Eigen::Stride<0, 0> >, Eigen::Product, 0, Eigen::Stride<0, 0> > const>, Eigen::Map, 0, Eigen::Stride<0, 0> >, 1>, Eigen::internal::assign_op, Eigen::internal::Dense2Dense, void>::run(Eigen::Map, 0, Eigen::Stride<0, 0> >&, Eigen::Product, 0, Eigen::Stride<0, 0> > const>, Eigen::Map, 0, Eigen::Stride<0, 0> >, 1> const&, Eigen::internal::assign_op const&) /data/gannet/ripley/R/test-dev/RcppEigen/include/Eigen/src/Core/AssignEvaluator.h:954 #6 0x7b8b09fd0d9c in void Eigen::internal::call_assignment_no_alias, 0, Eigen::Stride<0, 0> >, Eigen::Product, 0, Eigen::Stride<0, 0> > const>, Eigen::Map, 0, Eigen::Stride<0, 0> >, 1>, Eigen::internal::assign_op >(Eigen::Map, 0, Eigen::Stride<0, 0> >&, Eigen::Product, 0, Eigen::Stride<0, 0> > const>, Eigen::Map, 0, Eigen::Stride<0, 0> >, 1> const&, Eigen::internal::assign_op const&) /data/gannet/ripley/R/test-dev/RcppEigen/include/Eigen/src/Core/AssignEvaluator.h:890 #7 0x7b8b09fd0d9c in void Eigen::internal::call_assignment, 0, Eigen::Stride<0, 0> >, Eigen::Product, 0, Eigen::Stride<0, 0> > const>, Eigen::Map, 0, Eigen::Stride<0, 0> >, 1>, Eigen::internal::assign_op >(Eigen::Map, 0, Eigen::Stride<0, 0> >&, Eigen::Product, 0, Eigen::Stride<0, 0> > const>, Eigen::Map, 0, Eigen::Stride<0, 0> >, 1> const&, Eigen::internal::assign_op const&, Eigen::internal::enable_if, 0, Eigen::Stride<0, 0> > const>, Eigen::Map, 0, Eigen::Stride<0, 0> >, 1>, Eigen::internal::evaluator_traits, 0, Eigen::Stride<0, 0> > const>, Eigen::Map, 0, Eigen::Stride<0, 0> >, 1> >::Shape>::value, void*>::type) /data/gannet/ripley/R/test-dev/RcppEigen/include/Eigen/src/Core/AssignEvaluator.h:858 #8 0x7b8b09fd0d9c in void Eigen::internal::call_assignment, 0, Eigen::Stride<0, 0> >, Eigen::Product, 0, Eigen::Stride<0, 0> > const>, Eigen::Map, 0, Eigen::Stride<0, 0> >, 1> >(Eigen::Map, 0, Eigen::Stride<0, 0> >&, Eigen::Product, 0, Eigen::Stride<0, 0> > const>, Eigen::Map, 0, Eigen::Stride<0, 0> >, 1> const&) /data/gannet/ripley/R/test-dev/RcppEigen/include/Eigen/src/Core/AssignEvaluator.h:836 #9 0x7b8b09fd0d9c in Eigen::Map, 0, Eigen::Stride<0, 0> >& Eigen::MatrixBase, 0, Eigen::Stride<0, 0> > >::operator=, 0, Eigen::Stride<0, 0> > const>, Eigen::Map, 0, Eigen::Stride<0, 0> >, 1> >(Eigen::DenseBase, 0, Eigen::Stride<0, 0> > const>, Eigen::Map, 0, Eigen::Stride<0, 0> >, 1> > const&) /data/gannet/ripley/R/test-dev/RcppEigen/include/Eigen/src/Core/Assign.h:66 #10 0x7b8b09fd0d9c in lme4::merPredD::updateXwts(Eigen::Array const&) /data/gannet/ripley/R/packages/tests-gcc-SAN/lme4/src/predModule.cpp:221 #11 0x7b8b09e46416 in internal_glmerWrkIter /data/gannet/ripley/R/packages/tests-gcc-SAN/lme4/src/external.cpp:274 #12 0x7b8b09e46416 in pwrssUpdate /data/gannet/ripley/R/packages/tests-gcc-SAN/lme4/src/external.cpp:330 #13 0x7b8b09e5e3d4 in glmerLaplace /data/gannet/ripley/R/packages/tests-gcc-SAN/lme4/src/external.cpp:386 #14 0x00000075005e in R_doDotCall /data/gannet/ripley/R/svn/R-devel/src/main/dotcode.c:770 #15 0x0000008ed70a in bcEval_loop /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:8700 #16 0x0000008c3f63 in bcEval /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:7533 #17 0x0000008629ea in Rf_eval /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:1167 #18 0x00000087ad2a in R_execClosure /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:2398 #19 0x00000087ecdd in applyClosure_core /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:2314 #20 0x000000863098 in Rf_applyClosure /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:2333 #21 0x000000863098 in Rf_eval /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:1278 #22 0x000000894a2e in do_set /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:3585 #23 0x0000008634c6 in Rf_eval /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:1230 #24 0x00000087729b in do_begin /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:3001 #25 0x0000008634c6 in Rf_eval /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:1230 #26 0x00000087ad2a in R_execClosure /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:2398 #27 0x00000087ecdd in applyClosure_core /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:2314 #28 0x00000088038b in Rf_applyClosure /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:2333 #29 0x0000008eb805 in bcEval_loop /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:8121 #30 0x0000008c3f63 in bcEval /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:7533 #31 0x0000008629ea in Rf_eval /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:1167 #32 0x000000930ad1 in forcePromise.part.0.lto_priv.0 /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:976 #33 0x00000086405c in Rf_eval /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:1185 #34 0x0000008952f4 in Rf_evalList /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:3683 #35 0x00000086388c in Rf_eval /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:1249 #36 0x000000894a2e in do_set /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:3585 #37 0x0000008634c6 in Rf_eval /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:1230 #38 0x0000008952f4 in Rf_evalList /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:3683 #39 0x00000086388c in Rf_eval /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:1249 #40 0x0000008952f4 in Rf_evalList /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:3683 #41 0x00000086388c in Rf_eval /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:1249 #42 0x000000930ad1 in forcePromise.part.0.lto_priv.0 /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:976 #43 0x000000863f37 in Rf_eval /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:1191 #44 0x0000008d6d02 in bcEval_loop /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:8150 #45 0x0000008c3f63 in bcEval /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:7533 #46 0x0000008629ea in Rf_eval /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:1167 #47 0x00000087ad2a in R_execClosure /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:2398 #48 0x00000087ecdd in applyClosure_core /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:2314 #49 0x000000863098 in Rf_applyClosure /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:2333 #50 0x000000863098 in Rf_eval /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:1278 #51 0x00000087729b in do_begin /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:3001 #52 0x0000008634c6 in Rf_eval /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:1230 #53 0x00000087ad2a in R_execClosure /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:2398 #54 0x00000087ecdd in applyClosure_core /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:2314 #55 0x00000088038b in Rf_applyClosure /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:2333 #56 0x0000008eb805 in bcEval_loop /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:8121 #57 0x0000008c3f63 in bcEval /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:7533 #58 0x0000008629ea in Rf_eval /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:1167 #59 0x00000087ad2a in R_execClosure /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:2398 #60 0x00000087ecdd in applyClosure_core /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:2314 #61 0x000000863098 in Rf_applyClosure /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:2333 #62 0x000000863098 in Rf_eval /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:1278 #63 0x0000006237b5 in do_docall /data/gannet/ripley/R/svn/R-devel/src/main/coerce.c:2788 #64 0x0000008d6d02 in bcEval_loop /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:8150 #65 0x0000008c3f63 in bcEval /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:7533 #66 0x0000008629ea in Rf_eval /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:1167 #67 0x00000087ad2a in R_execClosure /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:2398 #68 0x00000087ecdd in applyClosure_core /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:2314 #69 0x000000863098 in Rf_applyClosure /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:2333 #70 0x000000863098 in Rf_eval /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:1278 #71 0x000000894a2e in do_set /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:3585 #72 0x0000008634c6 in Rf_eval /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:1230 #73 0x00000087729b in do_begin /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:3001 #74 0x0000008634c6 in Rf_eval /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:1230 #75 0x0000008634c6 in Rf_eval /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:1230 #76 0x000000a0b688 in Rf_ReplIteration /data/gannet/ripley/R/svn/R-devel/src/main/main.c:264 #77 0x000000a0b688 in R_ReplConsole /data/gannet/ripley/R/svn/R-devel/src/main/main.c:317 #78 0x000000a1a97a in run_Rmainloop /data/gannet/ripley/R/svn/R-devel/src/main/main.c:1235 #79 0x000000a1aa12 in Rf_mainloop /data/gannet/ripley/R/svn/R-devel/src/main/main.c:1242 #80 0x00000041306f in main /data/gannet/ripley/R/svn/R-devel/src/main/Rmain.c:29 #81 0x7f8b23e12574 in __libc_start_call_main (/lib64/libc.so.6+0x3574) (BuildId: 92b5376d35bb29c098175948cf3e7cbcae3aeae1) #82 0x7f8b23e12627 in __libc_start_main@GLIBC_2.2.5 (/lib64/libc.so.6+0x3627) (BuildId: 92b5376d35bb29c098175948cf3e7cbcae3aeae1) #83 0x000000413a14 in _start (/data/gannet/ripley/R/gcc-SAN3/bin/exec/R+0x413a14) (BuildId: f060bf4ee83b802127121439cefaeb137652c0ab) 0x7e6b211a0430 is located 48 bytes inside of 41648-byte region [0x7e6b211a0400,0x7e6b211aa6b0) freed by thread T0 here: #0 0x7f8b256e5beb in free.part.0 (/lib64/libasan.so.8+0xe5beb) (BuildId: d3cb6206dff19da52969c009f4cd93611901c478) #1 0x000000a1bf9f in ReleaseLargeFreeVectors /data/gannet/ripley/R/svn/R-devel/src/main/memory.c:1167 #2 0x000000a49e0d in RunGenCollect /data/gannet/ripley/R/svn/R-devel/src/main/memory.c:1951 #3 0x000000a7244d in R_gc_internal /data/gannet/ripley/R/svn/R-devel/src/main/memory.c:3237 #4 0x000000a872bb in CONS_NR /data/gannet/ripley/R/svn/R-devel/src/main/memory.c:2519 #5 0x000000895369 in Rf_evalList /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:3685 #6 0x00000086388c in Rf_eval /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:1249 #7 0x0000008952f4 in Rf_evalList /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:3683 #8 0x00000086388c in Rf_eval /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:1249 #9 0x000000874a92 in do_if /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:2709 #10 0x0000008634c6 in Rf_eval /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:1230 #11 0x000000894a2e in do_set /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:3585 #12 0x0000008634c6 in Rf_eval /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:1230 #13 0x00000087729b in do_begin /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:3001 #14 0x0000008634c6 in Rf_eval /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:1230 #15 0x00000087ad2a in R_execClosure /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:2398 #16 0x00000087ecdd in applyClosure_core /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:2314 #17 0x00000088038b in Rf_applyClosure /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:2333 #18 0x0000008eb805 in bcEval_loop /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:8121 #19 0x0000008c3f63 in bcEval /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:7533 #20 0x0000008629ea in Rf_eval /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:1167 #21 0x000000930ad1 in forcePromise.part.0.lto_priv.0 /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:976 #22 0x00000086405c in Rf_eval /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:1185 #23 0x0000008952f4 in Rf_evalList /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:3683 #24 0x00000086388c in Rf_eval /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:1249 #25 0x000000894a2e in do_set /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:3585 #26 0x0000008634c6 in Rf_eval /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:1230 #27 0x0000008952f4 in Rf_evalList /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:3683 #28 0x00000086388c in Rf_eval /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:1249 #29 0x0000008952f4 in Rf_evalList /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:3683 previously allocated by thread T0 here: #0 0x7f8b256e6f2b in malloc (/lib64/libasan.so.8+0xe6f2b) (BuildId: d3cb6206dff19da52969c009f4cd93611901c478) #1 0x000000a7a3e0 in Rf_allocVector3 /data/gannet/ripley/R/svn/R-devel/src/main/memory.c:2894 #2 0x0000005077b3 in Rf_allocVector /data/gannet/ripley/R/svn/R-devel/src/include/Rinlinedfuns.h:609 #3 0x0000005077b3 in Rf_allocMatrix /data/gannet/ripley/R/svn/R-devel/src/main/array.c:236 #4 0x7b8b1274b36e in modelmatrix /data/gannet/ripley/R/svn/R-devel/src/library/stats/src/model.c:676 #5 0x00000073b52a in do_External /data/gannet/ripley/R/svn/R-devel/src/main/dotcode.c:573 #6 0x0000008d6d02 in bcEval_loop /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:8150 #7 0x0000008c3f63 in bcEval /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:7533 #8 0x0000008629ea in Rf_eval /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:1167 #9 0x00000087ad2a in R_execClosure /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:2398 #10 0x00000087ecdd in applyClosure_core /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:2314 #11 0x000000a9f646 in Rf_applyClosure /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:2333 #12 0x000000a9f646 in applyMethod /data/gannet/ripley/R/svn/R-devel/src/main/objects.c:120 #13 0x000000aa3480 in dispatchMethod /data/gannet/ripley/R/svn/R-devel/src/main/objects.c:473 #14 0x000000aa56c0 in Rf_usemethod.isra.0 /data/gannet/ripley/R/svn/R-devel/src/main/objects.c:523 #15 0x000000aa6026 in do_usemethod /data/gannet/ripley/R/svn/R-devel/src/main/objects.c:579 #16 0x0000008e3f11 in bcEval_loop /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:8170 #17 0x0000008c3f63 in bcEval /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:7533 #18 0x0000008629ea in Rf_eval /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:1167 #19 0x00000087ad2a in R_execClosure /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:2398 #20 0x00000087ecdd in applyClosure_core /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:2314 #21 0x000000863098 in Rf_applyClosure /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:2333 #22 0x000000863098 in Rf_eval /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:1278 #23 0x00000089c5a1 in do_eval /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:3975 #24 0x0000008d6d02 in bcEval_loop /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:8150 #25 0x0000008c3f63 in bcEval /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:7533 #26 0x0000008629ea in Rf_eval /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:1167 #27 0x00000087ad2a in R_execClosure /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:2398 #28 0x00000087ecdd in applyClosure_core /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:2314 #29 0x000000863098 in Rf_applyClosure /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:2333 #30 0x000000863098 in Rf_eval /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:1278 #31 0x000000894a2e in do_set /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:3585 #32 0x0000008634c6 in Rf_eval /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:1230 #33 0x00000087729b in do_begin /data/gannet/ripley/R/svn/R-devel/src/main/eval.c:3001 SUMMARY: AddressSanitizer: heap-use-after-free /data/gannet/ripley/R/test-dev/RcppEigen/include/Eigen/src/Core/ProductEvaluators.h:925 in Eigen::internal::product_evaluator, 0, Eigen::Stride<0, 0> > const>, Eigen::Map, 0, Eigen::Stride<0, 0> >, 1>, 8, Eigen::DiagonalShape, Eigen::DenseShape, double, double>::coeff(long, long) const Shadow bytes around the buggy address: 0x7e6b211a0180: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x7e6b211a0200: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x7e6b211a0280: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x7e6b211a0300: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa 0x7e6b211a0380: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa =>0x7e6b211a0400: fd fd fd fd fd fd[fd]fd fd fd fd fd fd fd fd fd 0x7e6b211a0480: fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd 0x7e6b211a0500: fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd 0x7e6b211a0580: fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd 0x7e6b211a0600: fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd 0x7e6b211a0680: fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd fd Shadow byte legend (one shadow byte represents 8 application bytes): Addressable: 00 Partially addressable: 01 02 03 04 05 06 07 Heap left redzone: fa Freed heap region: fd Stack left redzone: f1 Stack mid redzone: f2 Stack right redzone: f3 Stack after return: f5 Stack use after scope: f8 Global redzone: f9 Global init order: f6 Poisoned by user: f7 Container overflow: fc Array cookie: ac Intra object redzone: bb ASan internal: fe Left alloca redzone: ca Right alloca redzone: cb ==3925487==ABORTING