TITLE: taking the address of a temporary (Newsgroups: comp.lang.c++.moderated, 18 Oct 99) ???: >> f(&T()); NARAN: Siemel B. Naran > You can't take the address of a temporary. The above is an error. MEYERS: Scott Meyers I suspect this is true only for built-in types. If T is a user-defined type, the above isn't taking the address of a temporary, it's an invocatin of the member function operator& on a temporary, and that's allowed. I point this out only because of the generalization that many (most?) restrictions on rvalues fail to apply to user-defined types, because what look like lvalue-only operations are really member function calls.