re: C Hacker question - thanks!



 Thanks to all who replied to my question regarding how to get the
 name of the calling routine of a C function.  It seems this is not "a
 simple thing", which is what I was afraid of.  The most useful
 suggestion(s)
 were to treat the problem via #defining the call rather than have the
 routine figure out its caller:
 #define Error_Msg(x,y)     Error_Msg_Linux(__func__,x,y)
 so that one could write
 Error_Msg("Unable to open output file",UNABLE_TO_OPEN)
 and the error message routine would see the calling function as the first
 argument.  __FUNCTION__ seems to work as well in gcc, although
 __func__  conforms to the newer standard.  This makes it easy for error
 messages to be tagged where they arise (which is what I was looking
 for).
 Research is currently underway on SGI - the older machines I have access
 to don't see to have either of these symbols.  I'm making due with __FILE__
 and __LINE__, which is not quite what I want (but it works).  If anybody's
 familiar with a similar variable (or compiler switch setting) for IRIX C to get
 me what gcc yields, please post it!
 I want to keep using IRIX C as long as possible due to the performance gains
 which result.
 Thanks again to all - hopefully this helps somebody else with how to do
 nice error messages!
 Joe Leonard
 jle # - at - # theworld.com (formerly jle # - at - # world.std.com)