All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] kconfig: Fix compiler warning
@ 2014-06-26  6:13 Sascha Hauer
  2014-06-26  9:02 ` Alexander Aring
  0 siblings, 1 reply; 5+ messages in thread
From: Sascha Hauer @ 2014-06-26  6:13 UTC (permalink / raw)
  To: barebox

gcc-4.9 is too silly to recognize that *jump cannot be used
uninitialized and issues a warning. Explicitly initialize
*jump to avoid the warning.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
---
 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 fd3f018..bea100b 100644
--- a/scripts/kconfig/menu.c
+++ b/scripts/kconfig/menu.c
@@ -525,7 +525,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;
-- 
2.0.0


_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox

^ permalink raw reply related	[flat|nested] 5+ messages in thread

* Re: [PATCH] kconfig: Fix compiler warning
  2014-06-26  6:13 [PATCH] kconfig: Fix compiler warning Sascha Hauer
@ 2014-06-26  9:02 ` Alexander Aring
  2014-06-30  6:03   ` Uwe Kleine-König
  0 siblings, 1 reply; 5+ messages in thread
From: Alexander Aring @ 2014-06-26  9:02 UTC (permalink / raw)
  To: Sascha Hauer; +Cc: barebox

Hi Sascha,

I get this warning about 1 month and it makes me crazy and I am unsing
"gcc (GCC) 4.9.0 20140604 (prerelease)".


Why I didn't sent any patches?
Because you say it here it's a compiler bug and the linux world doesn't
fix it this way. Look at [0].

"... since we will still want to catch unitialised use in the future,
should we were to changethe code." - which sounds useful.

They already add a comment to this. I think otherwise they get much
patches because this warning.

When I look into the current mainline code [1]. Then this is currently
not fixed in any way (comment or setting to NULL

- Alex

[0] http://www.spinics.net/lists/linux-kbuild/msg08898.html
[1] https://git.kernel.org/cgit/linux/kernel/git/next/linux-next.git/tree/scripts/kconfig/menu.c?id=refs/tags/next-20140626

_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH] kconfig: Fix compiler warning
  2014-06-26  9:02 ` Alexander Aring
@ 2014-06-30  6:03   ` Uwe Kleine-König
  0 siblings, 0 replies; 5+ messages in thread
From: Uwe Kleine-König @ 2014-06-30  6:03 UTC (permalink / raw)
  To: Alexander Aring; +Cc: barebox

On Thu, Jun 26, 2014 at 11:02:18AM +0200, Alexander Aring wrote:
> Hi Sascha,
> 
> I get this warning about 1 month and it makes me crazy and I am unsing
> "gcc (GCC) 4.9.0 20140604 (prerelease)".
> 
> 
> Why I didn't sent any patches?
> Because you say it here it's a compiler bug and the linux world doesn't
> fix it this way. Look at [0].
> 
> "... since we will still want to catch unitialised use in the future,
> should we were to changethe code." - which sounds useful.
> 
> They already add a comment to this. I think otherwise they get much
> patches because this warning.
> 
> When I look into the current mainline code [1]. Then this is currently
> not fixed in any way (comment or setting to NULL
There is also the macro uninitialized_var (in both kernel and barebox)
that could be used here instead of the explicit = NULL.

Best regards
Uwe

-- 
Pengutronix e.K.                           | Uwe Kleine-König            |
Industrial Linux Solutions                 | http://www.pengutronix.de/  |

_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [PATCH] kconfig: Fix compiler warning
@ 2014-11-20  5:44 Eddie Kovsky
  2014-11-28 13:19 ` Michal Marek
  0 siblings, 1 reply; 5+ messages in thread
From: Eddie Kovsky @ 2014-11-20  5:44 UTC (permalink / raw)
  To: Yann E. MORIN, linux-kbuild; +Cc: trivial, linux-kernel

Fixes gcc warning when building linux-next:

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);
                  ^
scripts/kconfig/menu.c:551:19: note: ‘jump’ was declared here
  struct jump_key *jump;
                   ^
  HOSTLD  scripts/kconfig/conf

Moved the initialization of struct jump_key *jump outside the first
'if' branch so it can be available throughout the function.

Also uses the preferred pointer syntax for passing the size of a struct.

Tested on next-20141119.

Signed-off-by: Eddie Kovsky <ewk@edkovsky.org>
---
 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 a26cc5d2a9b0..a728d23949e7 100644
--- a/scripts/kconfig/menu.c
+++ b/scripts/kconfig/menu.c
@@ -559,8 +559,8 @@ static void get_prompt_str(struct gstr *r, struct property *prop,
 		if (location == NULL && accessible)
 			location = menu;
 	}
+	jump = xmalloc(sizeof(*jump));
 	if (head && location) {
-		jump = xmalloc(sizeof(struct jump_key));
 
 		if (menu_is_visible(prop->menu)) {
 			/*
-- 
2.1.0


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* Re: [PATCH] kconfig: Fix compiler warning
  2014-11-20  5:44 Eddie Kovsky
@ 2014-11-28 13:19 ` Michal Marek
  0 siblings, 0 replies; 5+ messages in thread
From: Michal Marek @ 2014-11-28 13:19 UTC (permalink / raw)
  To: Eddie Kovsky; +Cc: Yann E. MORIN, linux-kbuild, trivial, linux-kernel

On 2014-11-20 06:44, Eddie Kovsky wrote:
> diff --git a/scripts/kconfig/menu.c b/scripts/kconfig/menu.c
> index a26cc5d2a9b0..a728d23949e7 100644
> --- a/scripts/kconfig/menu.c
> +++ b/scripts/kconfig/menu.c
> @@ -559,8 +559,8 @@ static void get_prompt_str(struct gstr *r, struct property *prop,
>  		if (location == NULL && accessible)
>  			location = menu;
>  	}
> +	jump = xmalloc(sizeof(*jump));
>  	if (head && location) {
> -		jump = xmalloc(sizeof(struct jump_key));

This creates a memory leak, because 'jump' is allocated, but not added
to the list, if the following condition is not met.

Michal


^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2014-11-28 13:19 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-06-26  6:13 [PATCH] kconfig: Fix compiler warning Sascha Hauer
2014-06-26  9:02 ` Alexander Aring
2014-06-30  6:03   ` Uwe Kleine-König
  -- strict thread matches above, loose matches on Subject: below --
2014-11-20  5:44 Eddie Kovsky
2014-11-28 13:19 ` Michal Marek

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.