From: Daniel Barkalow Date: Mon, 10 Oct 2005 20:14:31 GMT Subject: Re: [RFC] Cleaning up die() error messages Message-ID: In-Reply-To: <20051010105008.GB30202@gentoo.org> On Mon, 10 Oct 2005, Elfyn McBratney wrote: > [C sources] > static char *prog; > .. > static inline void set_prog_name (char *argv0) > { > prog = strrchr(argv0, '/'); > if (prog) > prog++; > else > prog = argv0; > } > .. > int main (int argc, char **argv) > { > set_prog_name(argv[0]); > .. > if (!do_bar()) > die("%s: do_bar() failed", prog); > .. > } Just put set_prog_name() next to die(), and have die() write "prog: " at the beginning if set_prog_name() got called. Assuming it's useful at all to show the name of the program, it's not going to be less useful if the error is actually found in a library function called by the program. -Daniel *This .sig left intentionally blank*