2017-09-09 17 views
0

私はtinyschemeバージョンv 1.41をデバッグしています。 ValgrindはそのことをメモしますValgrindで初期化されていない値がどこから来るかを見つける方法

==16675== Conditional jump or move depends on uninitialised value(s) 
==16675== at 0x4062C4: opexe_0 (scheme.c:2579) 
==16675== by 0x403C5E: Eval_Cycle (scheme.c:4471) 
==16675== by 0x40A3AC: scheme_load_named_file (scheme.c:4830) 
==16675== by 0x40A878: main (scheme.c:5118) 
==16675== 
==16675== Conditional jump or move depends on uninitialised value(s) 

==16675== at 0x406324: opexe_0 (scheme.c:2586) 
==16675== by 0x403C5E: Eval_Cycle (scheme.c:4471) 
==16675== by 0x40A3AC: scheme_load_named_file (scheme.c:4830) 
==16675== by 0x40A878: main (scheme.c:5118) 

この初期化されていない値は、オブジェクト内の型情報です。タイプ情報なしでオブジェクトが作成されているようです。そのメモリがいつ割り当てられたのか、またはその場所が他の初期化されていないデータで上書きされたかどうかを確認することに興味があります。

Valgrindに "そのメモリが割り当てられた時間と場所を教えてください"と伝える方法はありますか?

答えて

1

オプション

--track-origins=no|yes   show origins of undefined values? [no] 

は、未定義の値の起源についての詳細な情報を与えるためにvalgrindのを指示します。

関連する問題