u-boot-brain/tools
Paul Burton e94136bd87 mips-relocs: Fix warning from gcc 6.3
It seems that gcc 6.3 at least is smart enough to warn about the _val
variable being unassigned in the default case in the set_hdr_field()
macro, but not smart enough to figure out that the default case is never
taken. This results in warnings such as the following:

  pfx##hdr32[idx].field = _val;   \
                          ^
 ../tools/mips-relocs.c:51:11: note: _val was declared here
   uint64_t _val;      \
            ^
 ../tools/mips-relocs.c:88:2: note: in expansion of macro set_hdr_field
   set_hdr_field(p, idx, field, val)
   ^~~~~~~~~~~~~
 ../tools/mips-relocs.c:408:3: note: in expansion of macro set_phdr_field
    set_phdr_field(i, p_filesz, load_sz);
    ^~~~~~~~~~~~~~
 ../tools/mips-relocs.c: In function main:
 ../tools/mips-relocs.c:77:25: warning: _val may be used uninitialized
    in this function [-Wmaybe-uninitialized]

Avoid this by assigning _val = 0 in the default case, and asserting that
we didn't actually hit it for good measure.

For reference gcc 7.1.1 seems to be smart enough to not hit the above
warning without this patch.

Signed-off-by: Paul Burton <paul.burton@imgtec.com>
Fixes: 011dd93ca97a ("MIPS: Stop building position independent code")
Cc: Daniel Schwierzeck <daniel.schwierzeck@gmail.com>
Cc: Tom Rini <trini@konsulko.com>
Cc: u-boot@lists.denx.de
2017-07-25 20:44:38 +02:00
..
binman binman: Put our local modules ahead of system modules 2017-07-11 10:08:20 -06:00
buildman avr32: Retire AVR32 for good 2017-07-06 16:17:19 -04:00
dtoc dtoc: Add tests 2017-07-11 10:08:20 -06:00
easylogo
env tools/fw_env: use fsync to ensure that data is physically stored 2017-07-22 15:36:16 -04:00
gdb
kermit
logos imx6: icorem6: Add custom splashscreen support 2016-12-16 17:15:27 +01:00
omap
patman patman: Add a functional test 2017-06-08 20:21:59 -06:00
scripts
.gitignore MIPS: Stop building position independent code 2017-07-25 20:44:00 +02:00
aisimage.c
aisimage.h
atmel_pmecc_params.c
atmelimage.c
bmp_logo.c
default_image.c tools: mkimage: add firmware-ivt image type for HAB verification 2017-01-02 17:06:57 +01:00
dumpimage.c
dumpimage.h
envcrc.c
fdt_host.h
fdtgrep.c fdtgrep: Deal with NULL data passed to check_type_include() 2017-06-12 08:38:07 -04:00
fit_check_sign.c
fit_common.c
fit_common.h
fit_image.c mkimage: Add support for signing with pkcs11 2017-01-14 16:47:13 -05:00
fit_info.c
gen_eth_addr.c
gen_ethaddr_crc.c tools: Add tool to add crc8 to a mac address 2017-02-07 10:54:33 -06:00
genboardscfg.py tools/genboardscfg.py: Make 'Supported' as known status 2017-05-12 08:37:36 -04:00
getline.c
getline.h
gpheader.h
gpimage-common.c
gpimage.c
ifdtool.c binman: Drop microcode features from ifdtool 2016-12-20 08:09:55 +13:00
ifdtool.h
image-host.c mkimage: Add support for signing with pkcs11 2017-01-14 16:47:13 -05:00
imagetool.c
imagetool.h mkimage: Add support for signing with pkcs11 2017-01-14 16:47:13 -05:00
img2brec.sh
img2srec.c treewide: remove unneeded semicolons 2017-06-16 10:11:38 -04:00
imximage.c tools: imximage: add set bit command 2017-03-19 17:30:15 +01:00
imximage.h imx: reorganize IMX code as other SOCs 2017-07-12 10:17:44 +02:00
jtagconsole
kwbimage.c tools/kwbimage: fix v1 header verification 2017-07-12 06:57:55 +02:00
kwbimage.h tools/kwbimage.h: make offset marks style consistent 2017-07-12 06:57:55 +02:00
kwboot.c tools: kwboot: don't adjust destaddr when patching the image 2017-02-17 10:15:56 +01:00
lpc32xximage.c
Makefile MIPS: Stop building position independent code 2017-07-25 20:44:00 +02:00
microcode-tool
microcode-tool.py
mingw_support.c
mingw_support.h
mips-relocs.c mips-relocs: Fix warning from gcc 6.3 2017-07-25 20:44:38 +02:00
mkenvimage.c
mkexynosspl.c
mkimage.c mkimage: fix display of image types list 2017-07-06 16:17:16 -04:00
mkimage.h dtc: mkimage: Add the possibility to specify DTC 2017-07-22 15:36:19 -04:00
mksunxiboot.c sunxi: Store the device tree name in the SPL header 2017-05-17 23:23:58 +05:30
moveconfig.py RFC: moveconfig: Use toolchains from buildman 2017-07-22 22:22:46 -04:00
mxsboot.c
mxsimage.c tools: mxsimage: Fix build with OpenSSL 1.1.x 2016-12-19 12:26:39 -05:00
mxsimage.h
ncb.c
netconsole
omapimage.c tools: omapimage: Fix size in header 2017-03-14 20:40:17 -04:00
omapimage.h
os_support.c
os_support.h
pbl_crc32.c
pbl_crc32.h
pblimage.c tools: plbimage support generate rcw file 2017-03-28 09:19:18 -07:00
pblimage.h
proftool.c
relocate-rela.c relocate-rela: add missing va_end() 2017-05-05 16:45:57 -04:00
rkcommon.c rockchip: mkimage: add support for rk322x soc 2017-07-11 12:13:45 +02:00
rkcommon.h rockchip: mkimage: force 2KB alignment for init_size 2017-06-07 07:29:22 -06:00
rkimage.c rockchip: mkimage: remove placeholder functions from rkimage 2017-05-10 13:37:21 -06:00
rkmux.py
rksd.c rockchip: mkimage: force 2KB alignment for init_size 2017-06-07 07:29:22 -06:00
rkspi.c rockchip: mkimage: force 2KB alignment for init_size 2017-06-07 07:29:22 -06:00
socfpgaimage.c
sunxi-spl-image-builder.c tools: sunxi: avoid read after end of string 2017-05-05 16:45:57 -04:00
ublimage.c
ublimage.h
ubsha1.c
vybridimage.c
xway-swap-bytes.c
zynqimage.c tools: mkimage: Call fclose in error path 2016-12-27 11:24:16 -05:00
zynqmpimage.c tools: mkimage: Call fclose in error path 2016-12-27 11:24:16 -05:00