Ben, these are small changes I think should be applied with your series, on top of the patches I send yesterday. I've pushed everything at: git://github.com/lucvoo/sparse-dev.git format-check If you're fine with these, I can squeeze them with the series. There are also a few tests I don't agree with: const void *ptr = ... printf("%s", ptr); These tests silently accept this, but they should warn. But this can be fixed at a later step. Luc Van Oostenryck (8): need to strip SYM_NODE before comparing types add helper get_nth_expression() move the definition of FMT_{PRINTF,SCANF} parse format attribute less verbosely call verify_format_attribute() unconditionally s/data/type/ for struct format_type add support for "%ls" add support for "%Lx" (and "%Ls") evaluate.c | 4 +-- lib.h | 5 +++ parse.c | 30 +++++++---------- symbol.h | 7 ++++ validation/varargs-format-dyn-prec.c | 11 ++++++ verify-format.c | 50 ++++++++++++++++------------ 6 files changed, 65 insertions(+), 42 deletions(-) create mode 100644 validation/varargs-format-dyn-prec.c -- 2.28.0