Embedded System LINT use
I haven't used lint, but I find that GCC's warnings can detect a lot of programming errors.

Here's my preferred CFLAGS

CFLAGS += -Werror -W -Wall -ansi -pedantic -Wformat-nonliteral -Wcast-align -Wpointer-arith -Wbad-function-cast -Wmissing-prototypes -Wstrict-prototypes -Wmissing-declarations -Winline -Wundef -Wnested-externs -Wshadow -Wconversion -Wwrite-strings -Wno-conversion -Wextra -Wstrict-aliasing -Wcast-qual

I've also had a go with Linus Torvalds' Sparse for static analysis. But, I think these kind of tools are more useful for big systems.