I am modifying a big program written by somebody else. When I modified some ".h" files, say a.h, then I run "make all", but I found out make didn't recompile those files which included "a.h" file. In my case "a.h" has some inline functions, so I have to manually remove those .o files in order to get a fresh incremental build. My question is: is this phenomenon caused by bad-wrritten make files or I misunderstood the functionality of make? Thanks.