diff mbox

[U-Boot] kconfig: Fix compiler warning in menu.c

Message ID 1406816503-31963-1-git-send-email-hdegoede@redhat.com
State Deferred
Delegated to: Tom Rini
Headers show

Commit Message

Hans de Goede July 31, 2014, 2:21 p.m. UTC
This fixes the following compiler warning:

In file included from scripts/kconfig/zconf.tab.c:2537:0:
scripts/kconfig/menu.c: In function ‘get_symbol_str’:
scripts/kconfig/menu.c:590:18: warning: ‘jump’ may be used uninitialized in this function [-Wmaybe-uninitialized]
     jump->offset = strlen(r->s);
                  ^
In file included from scripts/kconfig/zconf.tab.c:2537:0:
scripts/kconfig/menu.c:551:19: note: ‘jump’ was declared here
  struct jump_key *jump;

Signed-off-by: Hans de Goede <hdegoede@redhat.com>
---
 scripts/kconfig/menu.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Jeroen Hofstee July 31, 2014, 8:10 p.m. UTC | #1
Hello Hans,

On 31-07-14 16:21, Hans de Goede wrote:
> This fixes the following compiler warning:
>
> In file included from scripts/kconfig/zconf.tab.c:2537:0:
> scripts/kconfig/menu.c: In function ‘get_symbol_str’:
> scripts/kconfig/menu.c:590:18: warning: ‘jump’ may be used uninitialized in this function [-Wmaybe-uninitialized]
>       jump->offset = strlen(r->s);
>                    ^
> In file included from scripts/kconfig/zconf.tab.c:2537:0:
> scripts/kconfig/menu.c:551:19: note: ‘jump’ was declared here
>    struct jump_key *jump;
>
> Signed-off-by: Hans de Goede <hdegoede@redhat.com>
> ---
>   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;

just curious, which compiler is this? Since it is a false positive.
(and it could know)

Regards,
Jeroen
Hans de Goede July 31, 2014, 9:32 p.m. UTC | #2
Hi,

On 07/31/2014 10:10 PM, Jeroen Hofstee wrote:
> Hello Hans,
> 
> On 31-07-14 16:21, Hans de Goede wrote:
>> This fixes the following compiler warning:
>>
>> In file included from scripts/kconfig/zconf.tab.c:2537:0:
>> scripts/kconfig/menu.c: In function ‘get_symbol_str’:
>> scripts/kconfig/menu.c:590:18: warning: ‘jump’ may be used uninitialized in this function [-Wmaybe-uninitialized]
>>       jump->offset = strlen(r->s);
>>                    ^
>> In file included from scripts/kconfig/zconf.tab.c:2537:0:
>> scripts/kconfig/menu.c:551:19: note: ‘jump’ was declared here
>>    struct jump_key *jump;
>>
>> Signed-off-by: Hans de Goede <hdegoede@redhat.com>
>> ---
>>   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;
> 
> just curious, which compiler is this? Since it is a false positive.
> (and it could know)

[hans@shalem u-boot]$ rpm -q gcc
gcc-4.9.1-2.fc21.1.x86_64

Regards,

Hans
Jeroen Hofstee July 31, 2014, 10:21 p.m. UTC | #3
Hello Hans,

On 31-07-14 16:21, Hans de Goede wrote:
> This fixes the following compiler warning:
>
> In file included from scripts/kconfig/zconf.tab.c:2537:0:
> scripts/kconfig/menu.c: In function ‘get_symbol_str’:
> scripts/kconfig/menu.c:590:18: warning: ‘jump’ may be used uninitialized in this function [-Wmaybe-uninitialized]
>       jump->offset = strlen(r->s);
>                    ^
> In file included from scripts/kconfig/zconf.tab.c:2537:0:
> scripts/kconfig/menu.c:551:19: note: ‘jump’ was declared here
>    struct jump_key *jump;
>
> Signed-off-by: Hans de Goede <hdegoede@redhat.com>
> ---
>   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;

And if you combine head && location into a single boolean,
does this warning still occur? Not that it matters that much
in this case, since it is a host tool, but I guess the compiler
does intend to assign NULL while there is no reason to do so.

Regards,
Jeroen
diff mbox

Patch

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;