Valgrind を既存のコードベースに対して実行すると、多くの「Mismatched free / delete/delete[]」エラーが発生します。それらの多くは 1 つの問題の繰り返しです: 行 XXX でdelete
操作が使用されているのに対し、行 YYY でmalloc
操作が使用されていると主張しています。ただし、問題のあるファイルを開いて、指定された行番号に移動すると、メモリが割り当てられていないことがわかりmalloc
ますnew
. 割り当てられたオブジェクトは標準ifstream
であり、どちらnew[]
もdelete[]
使用されていません。
Valgrind 3.5を実行しています。何が起こっているのか誰にも分かりませんか?これがどのように本当のエラーであるかはわかりませんが、Valgrind は多くの誤検出を起こさないと主張する人もいるので、これを抑制する前に、これが偽物であるという確信を持ちたいと思います。