Hi,

I am sorry if this is perceived as a C++ question rather than an R question. After uploading an R library to CRAN (MCMCglmm) the C++ code failed to pass the memory checks. The errors come in pairs like:

Mismatched free() / delete / delete []
at 0x4A077E6: free (vg_replace_malloc.c:446)
by 0x144FA28E: MCMCglmm (MCMCglmm.cc:2184)


Address 0x129850c0 is 0 bytes inside a block of size 4 alloc'd
at 0x4A07CE4: operator new[](unsigned long) (vg_replace_malloc.c:363)
by 0x144F12B7: MCMCglmm (MCMCglmm.cc:99)

which is associated with lines allocating and freeing memory (nG is an integer):

int *keep = new int [nG];

and

delete [] keep;

To me this looks fine, and on my machine (Scientific Linux 6.4) using gcc 4.4.7-3 and valgrind 1:3.8.1-3.2 I get no such errors. Its not clear to me which flavour of Linux or compiler the CRAN team used, although from MCMCglmm-Ex.Rout I can see the same version of valgrind was used. Any insight would be very welcome.

Kind Regards,

Jarrod








--
The University of Edinburgh is a charitable body, registered in
Scotland, with registration number SC005336.

______________________________________________
R-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel

Reply via email to