From j.hadfield at ed.ac.uk  Fri Mar 14 18:56:25 2014
From: j.hadfield at ed.ac.uk (Jarrod Hadfield)
Date: Fri, 14 Mar 2014 17:56:25 +0000
Subject: [Rd] Conditional jump or move depends on uninitialised value(s)
Message-ID: <20140314175625.11267aj8gcymx4co@www.staffmail.ed.ac.uk>

Hi,

I'm using valgrind to check over some C/C++ code for an R library. I'm  
getting the report (see below), but can't track down the uninitialised  
value(s). I tried using  --track-origins=yes in valgrind which gives:

==28258==  Uninitialised value was created by a stack allocation
==28258==    at 0xEE33D98: ??? (in /usr/lib64/R/lib/libRlapack.so)

I presume the problem is an uninitialised value being used in my code,  
rather than in libRlapack, but there is a better way of tracking down  
where it is?

Cheers,

Jarrod

> R -d "valgrind --tool=memcheck --leak-check=full --track-origins=yes"

==28258== Conditional jump or move depends on uninitialised value(s)
==28258==    at 0xEE87208: dstemr_ (in /usr/lib64/R/lib/libRlapack.so)
==28258==    by 0xEE7F39B: dsyevr_ (in /usr/lib64/R/lib/libRlapack.so)
==28258==    by 0x15B23BD9: ??? (in /usr/lib64/R/modules/lapack.so)
==28258==    by 0x15B28397: ??? (in /usr/lib64/R/modules/lapack.so)
==28258==    by 0x35CA4BFEAC: ??? (in /usr/lib64/R/lib/libR.so)
==28258==    by 0x35CA4C8A1F: Rf_eval (in /usr/lib64/R/lib/libR.so)
==28258==    by 0x35CA4BB310: Rf_applyClosure (in /usr/lib64/R/lib/libR.so)
==28258==    by 0x35CA4C58F9: ??? (in /usr/lib64/R/lib/libR.so)
==28258==    by 0x35CA4C8A1F: Rf_eval (in /usr/lib64/R/lib/libR.so)
==28258==    by 0x35CA4BB310: Rf_applyClosure (in /usr/lib64/R/lib/libR.so)
==28258==    by 0x35CA4C8ACC: Rf_eval (in /usr/lib64/R/lib/libR.so)
==28258==    by 0x35CA4CAEE7: ??? (in /usr/lib64/R/lib/libR.so)
==28258==  Uninitialised value was created by a stack allocation
==28258==    at 0xEE33D98: ??? (in /usr/lib64/R/lib/libRlapack.so)


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



[Rd] Conditional jump or move depends on uninitialised value(s)
Jarrod Hadfield