When malloc for jump, if (head && location) { jump = xmalloc(sizeof(struct jump_key)); .... } And here it is used: if (head && location && menu == location) jump->offset = strlen(r->s); So I think when jump is used, it must not be NULL; then !=NULL is not needed. -----Original Message----- From: Heinrich Schuchardt [mailto:xypron.glpk@xxxxxx] Sent: Tuesday, July 01, 2014 1:03 AM To: Li, Zhen-Hua; Yann E. MORIN; linux-kbuild@xxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx Subject: Re: [PATCH 1/1] script/kconfig: remove a warning for menucofig On 30.06.2014 05:16, Li, Zhen-Hua wrote: > There is a warning when run "make menuconfig". > > scripts/kconfig/menu.c: In function ‘get_symbol_str’: > scripts/kconfig/menu.c:591:18: warning: ‘jump’ may be used uninitialized in > this function [-Wmaybe-uninitialized] > jump->offset = strlen(r->s); > ^ > scripts/kconfig/menu.c:551:19: note: ‘jump’ was declared here > struct jump_key *jump; > ^ > > It is because the compiler think "jump" is not initialized, though in fact > it is already initialized. > > Signed-off-by: Li, Zhen-Hua <zhen-hual@xxxxxx> > --- > scripts/kconfig/menu.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/scripts/kconfig/menu.c b/scripts/kconfig/menu.c > index a26cc5d..584e0fc 100644 > --- a/scripts/kconfig/menu.c > +++ b/scripts/kconfig/menu.c > @@ -548,7 +548,7 @@ static void get_prompt_str(struct gstr *r, struct property *prop, > { > int i, j; > struct menu *submenu[8], *menu, *location = NULL; > - struct jump_key *jump; > + struct jump_key *jump = NULL; > > str_printf(r, _("Prompt: %s\n"), _(prop->text)); > menu = prop->menu->parent; > Hello Zhen-Hua, the patch looks incomplete to me. A check jump != NULL should be added before accessing parts of structure jump_key. Best regards Heinrich Schuchardt ��.n��������+%������w��{.n�����{��F���{ay�ʇڙ���f���h������_�(�階�ݢj"��������G����?���&��