in reply to caller() returns wrong line on multi-line function call
foo( __LINE__, __LINE__, __LINE__); [download]
It is 90% a curiosity, but I have debugging routines that occasionally report the wrong calling line because of this bug.
Passing __LINE__ to the test function was just illustrative.