Storing expression trees using C++11's auto keyword can lead to strange pitfalls, non-working or inefficient code.
Some examples are bug 434, bug 505, bug 680 and various mailing list questions.
Some non-working code will be fixed by bug 99, but still some inefficient code will remain -- while sometimes the use of auto can be valid.
I'd think the best we can do for now is to explain this issue prominently in our documentation and link to it from as many places as possible.
*** Bug 434 has been marked as a duplicate of this bug. ***
Summary: Add a documentation page for common pitfalls