[PATCH 00/22] add support for clang-analyzer with scan-build

Ahmad Fatoum a.fatoum at pengutronix.de
Thu Mar 13 00:34:23 PDT 2025


With the changes, it's now possible to build barebox for sandbox
with allyesconfig with clang under scan-build with:

  export LLVM=-19 # or whatever your clang suffix is if you've one
  scan-build${LLVM} --use-cc=clang${LLVM} make

For this build to run to completion, a number of things that clang
treats as errors need to be resolved as well, which is included
in this series.

Ahmad Fatoum (22):
  kbuild: add support for clang-analyzer with scan-build
  soc: ti: k3-navss-ringacc: fix COMPILE_TEST link error
  treewide: fix missing headers in sandbox allyesconfig
  drivers: don't cast pointer directly to enum
  firmware: arm_scmi: smc: compile only for ARM
  video: stm32-ltdc: fix printing uninitialized variable
  usb: core: remove unnecessary comparison
  ddr_spd: fix always true sub-condition
  hush: fix make_string behavior on empty strings
  nvmem: fix clang-analyzer false-positive use of uninitialized value
  string: initialize string array in string selftest
  commands: ubsan: hide zero division in test
  crypto: ecc: fix clang-analyzer warning about NULL dereference
  mci_spi: fix possible use of uninitialized variable
  mtd: have mtd_read populate retlen always
  of: fdt: silence possible static analyzer false positive
  ubi: workaround zero division on malformed input in ubi_assert
  video: Rockchip: fix zero division in rk3588_calc_cru_cfg
  lib: scatterlist: don't assert last element for empty sglist
  scripts: omap3-usb-loader: fix clang-analyzer false-positive
  clk: analogbits: wrpll-cln28hpc: bail out before zero division
  watchdog: stm32_iwdg: bail out before zero division

 Makefile                                   |  9 +++++++++
 commands/ubsan.c                           |  2 ++
 common/ddr_spd.c                           |  6 ++----
 common/hush.c                              |  4 ++++
 crypto/ecc.c                               |  2 ++
 drivers/aiodev/lm75.c                      |  2 +-
 drivers/clk/analogbits/wrpll-cln28hpc.c    |  3 +++
 drivers/dma/ti/Kconfig                     |  6 ++++++
 drivers/dma/ti/k3-udma.c                   |  2 +-
 drivers/firmware/arm_scmi/Kconfig          |  1 +
 drivers/mci/mci_spi.c                      |  2 +-
 drivers/mfd/tps65219.c                     |  1 +
 drivers/mtd/core.c                         |  9 ++++-----
 drivers/mtd/ubi/build.c                    |  3 ++-
 drivers/net/ksz8864rmn.c                   |  2 +-
 drivers/nvmem/core.c                       |  2 +-
 drivers/of/fdt.c                           |  3 +++
 drivers/pmdomain/ti/ti-k3.c                |  1 +
 drivers/regulator/fan53555.c               |  2 +-
 drivers/regulator/tps65219-regulator.c     |  1 +
 drivers/soc/Makefile                       |  2 +-
 drivers/soc/ti/Kconfig                     | 11 +++++++++++
 drivers/soc/ti/Makefile                    |  4 +++-
 drivers/soc/ti/k3-navss-ringacc.c          |  1 +
 drivers/usb/core/common.c                  |  2 +-
 drivers/video/rockchip/rockchip_drm_vop2.c |  6 +++---
 drivers/video/stm32_ltdc.c                 |  6 ++----
 drivers/watchdog/stm32_iwdg.c              |  3 +++
 lib/scatterlist.c                          |  2 +-
 scripts/omap3-usb-loader.c                 |  9 ++++++---
 test/self/string.c                         |  2 +-
 31 files changed, 80 insertions(+), 31 deletions(-)

-- 
2.39.5




More information about the barebox mailing list