|
From: | Marc Nieper-Wißkirchen |
Subject: | Re: Valgrind is complaining unitialized values in freea (malloca.c:135) |
Date: | Tue, 22 Aug 2017 09:27:11 -0700 |
On Dienstag, 22. August 2017 06:11:41 CEST Marc Nieper-Wißkirchen wrote:
> In freea in malloca.c, a possibly uninitialized indicator word is used for
> a comparison so that Valgrind reports: "Conditional jump or move depends on
> uninitialised value(s)".
>
> Valgrind is not smart enough to understand the logic in freea.
>
> It would be nice if the warning could be silenced, either by amending freea
> slightly (it seems that a similar thing has already been done for Clang
> warnings) or by reporting the issue to the Valgrind developers so that they
> can special-case gnulib's freea.
I also see several false positives from clang's Undefined Sanitizer due to
alloca 'magic' (reallocations on stack space ?). This might not be directly
related, but I think there is a common coding pattern.
glob.c:1738:23: runtime error: index 64 out of bounds for type 'char *[64]'
#0 0x557545 in glob_in_dir /home/tim/src/wget2/lib/glob.c:1738:40
#1 0x54ded1 in rpl_glob /home/tim/src/wget2/lib/glob.c:1306:16
SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior glob.c:1738:23 in
glob.c:1739:27: runtime error: index 64 out of bounds for type 'char *[64]'
#0 0x5575d4 in glob_in_dir /home/tim/src/wget2/lib/glob.c:1739:27
#1 0x54ded1 in rpl_glob /home/tim/src/wget2/lib/glob.c:1306:16
SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior glob.c:1739:27 in
glob.c:1811:21: runtime error: index 64 out of bounds for type 'char *[64]'
#0 0x55845e in glob_in_dir /home/tim/src/wget2/lib/glob.c:1811:21
#1 0x54ded1 in rpl_glob /home/tim/src/wget2/lib/glob.c:1306:16
Regards, Tim
[Prev in Thread] | Current Thread | [Next in Thread] |