Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 5 Aug 2012 15:55:37 +0000 (UTC)
From:      Dimitry Andric <dim@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r239071 - head/usr.bin/make
Message-ID:  <201208051555.q75Ftbaa099801@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: dim
Date: Sun Aug  5 15:55:36 2012
New Revision: 239071
URL: http://svn.freebsd.org/changeset/base/239071

Log:
  In usr.bin/make/var.c, function ParseModifier(), initialize the 'error'
  variable to NULL, to avoid using it uninitialized in certain cases.
  
  This fixes the following clang 3.2 warning:
  
    usr.bin/make/var.c:1770:10: error: variable 'error' is used uninitialized whenever 'if' condition is false [-Werror,-Wsometimes-uninitialized]
                                            if (vp->execute) {
                                                ^~~~~~~~~~~
    usr.bin/make/var.c:1777:10: note: uninitialized use occurs here
                                            if (error)
                                                ^~~~~
    usr.bin/make/var.c:1770:6: note: remove the 'if' if its condition is always true
                                            if (vp->execute) {
                                            ^~~~~~~~~~~~~~~~~
    usr.bin/make/var.c:1768:23: note: initialize the variable 'error' to silence this warning
                                            const char      *error;
                                                                  ^
                                                                   = NULL
  
  MFC after:      1 week

Modified:
  head/usr.bin/make/var.c

Modified: head/usr.bin/make/var.c
==============================================================================
--- head/usr.bin/make/var.c	Sun Aug  5 15:40:16 2012	(r239070)
+++ head/usr.bin/make/var.c	Sun Aug  5 15:55:36 2012	(r239071)
@@ -1765,7 +1765,7 @@ ParseModifier(VarParser *vp, char startc
 				if ((vp->ptr[0] == 's') &&
 				    (vp->ptr[1] == 'h') &&
 				    (vp->ptr[2] == endc || vp->ptr[2] == ':')) {
-					const char	*error;
+					const char	*error = NULL;
 
 					if (vp->execute) {
 						newStr = Buf_Peel(



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201208051555.q75Ftbaa099801>