Code carefully copying LookupResults which aren't exactly copyable

Perhaps I should remove the old lists from my contacts…

As I recall, the capture of the LookupResult (which was believed to be safe) was a convenient way of capturing the lookup-parameter state of the LookupResult–the identifier being looked up, it’s location, the lookup kind, etc–instead of breaking them out into a bunch of separate local variables to be captured by the lambda and used to rebuild a LookupResult suitable for passing into SemaRef.BuildMemberReferenceExpr (which IIRC depends on the LookupResult telling it whether overload resolution is necessary).

As I recall, the capture of the LookupResult (which was believed to be
safe) was a convenient way of capturing the lookup-parameter state of the
LookupResult--the identifier being looked up, it's location, the lookup
kind, etc--

I wonder if we could make a little struct of that state and pull it out of
the original LookupResult, capture it, and put it back into a LookupResult
on the other side...