Newer llvm/clang versions (since r102686) have a __clang_version__ macro which can be used to print the exact clang version.
Fix a case where chip_to_probe was referenced twice via extern, once at the function level and once in a global include file. Found by latest clang.
Tested on old and new clang.
Signed-off-by: Carl-Daniel Hailfinger c-d.hailfinger.devel.2006@gmx.net
Index: flashrom-clang_version/w29ee011.c =================================================================== --- flashrom-clang_version/w29ee011.c (Revision 1073) +++ flashrom-clang_version/w29ee011.c (Arbeitskopie) @@ -26,7 +26,6 @@ { chipaddr bios = flash->virtual_memory; uint8_t id1, id2; - extern char *chip_to_probe;
if (!chip_to_probe || strcmp(chip_to_probe, "W29EE011")) { msg_cdbg("Probing disabled for Winbond W29EE011 because " Index: flashrom-clang_version/flashrom.c =================================================================== --- flashrom-clang_version/flashrom.c (Revision 1073) +++ flashrom-clang_version/flashrom.c (Arbeitskopie) @@ -1272,7 +1272,12 @@ #endif #endif #ifdef __clang__ - msg_ginfo(" LLVM %i/clang %i, ", __llvm__, __clang__); + msg_ginfo(" LLVM Clang"); +#ifdef __clang_version__ + msg_ginfo(" %s,", __clang_version__); +#else + msg_ginfo(" unknown version (before r102686),"); +#endif #elif defined(__GNUC__) msg_ginfo(" GCC"); #ifdef __VERSION__