>>Ok, you tell me what I though he said then.
He was informing you that the function you had implemented returned no value. If it returns no value then cout has nothing to print. So what you wrote and what you thought I wanted you to do were not the same. If your point was that it returns no object for cout to print, and you were trying to follow my advice, then at that time you misunderstood me.

>>Yes, and that is exactly what I'm doing now.
It didn't look like it to me. But I'm forced to believe you're correct.

>>Well it's part of the chain, clearly.
In the same way that cout will always need to display things, sure. But the next operator is the next link in the chain, carrying the stream object cout and another object to display. Operations on d only affect d, and not what cout or its operators are doing later on.