Log Message: Be a friend of the class, not of every member. Use the class we are friend with to find the method we are interested in, not the evil parent. Consistently return a value from a non-void function.