Date: Mon, 1 Jun 2009 13:28:12 +0100 From: Bruce Cran <bruce@cran.org.uk> To: =?utf-8?Q?Ond=C5=99ej?= Majerech <oxyd.oxyd@gmail.com> Cc: Gary Kline <kline@thought.org>, FreeBSD Mailing List <freebsd-questions@freebsd.org> Subject: Re: how to i designate the current function...? Message-ID: <20090601132812.12d93819@gluon.draftnet> In-Reply-To: <op.uutgjpotyxk8o8@localhost> References: <20090531223136.GA9212@thought.org> <op.uutgjpotyxk8o8@localhost>
next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, 01 Jun 2009 00:53:39 +0200 Ond=C5=99ej Majerech <oxyd.oxyd@gmail.com> wrote: > On Mon, 01 Jun 2009 00:31:40 +0200, Gary Kline <kline@thought.org> > wrote: >=20 > > I'm not sure this is std yet, but think it is available in > > gcc. If I'm calling funtion bar(char *, char) with one of the args > > incorrect, is there a way to have gcc name bar() in an > > error message? > > >=20 > Are you looking for the __FUNCTION__ macro? >=20 > void baz( char yes_no ) { > if ( yes_no =3D=3D 'Y' || yes_no =3D=3D 'N' ) { > // Do stuff... > } else { > printf( "%s: %s\n", __FUNCTION__, "I got an invalid arg" ); > } > } >=20 > AFAIK, this isn't standard C, but well supported on GCC. __FUNCTION__ is commonly supported, but has never been standardised; C99 defines __func__ instead. See http://gcc.gnu.org/onlinedocs/gcc/Function-Names.html for details. --=20 Bruce Cran
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20090601132812.12d93819>