I couldn't decide where this best belonged.

I'm writing a rebuttal of sorts to some of the more bizarre C++ coding standards in some industry specific standard documents. Unfortunately, I can't find a copy I was passed years back.

Okay. So, I'm doing this for funsies (Mostly. I plan to put it on my website later... which usually never comes.) so can't afford to go about buying copies of lots of different documents. I'm basically just hoping someone can copy the relevant rule for me with the supporting source information. (I'm talking a few lines. I don't need the supporting rationale or anything. I know the rationale. I'm not looking for a piecewise copy so everything else is irrelevant.) If I can't get that I'm hoping someone will recognize the rule so may point me in the right direction.

The rule in question, from vague memory, allowed reference parameters (&) and references (&) to be returned from functions but does not allow a parameter passed by reference (&) to be returned from a function as a reference (&). Crucially, this allowed classes (The `this' pointer is a pointer.) but forbid many forms of useful operator overloading even though operator overloading was generally allowed by these rules.

I know this is obscure so thanks for looking this post over just the same.

Soma