[cfe-dev] Dynamic / Last Resort Lookup

Douglas Gregor dgregor at apple.com
Thu Feb 3 11:24:14 PST 2011

On Feb 3, 2011, at 2:45 AM, Axel Naumann wrote:

> Hi Argyrios,
> Argyrios Kyrtzidis wrote on 02/02/2011 07:17 PM:
>>> Attached patch creates a last resort, dynamic lookup: if that hook
>>> (implemented by an abstract interface) has been provided, it will get
>>> its chance to look up a symbol but only if all the other language
>>> foreseen lookups have failed (i.e. with lowest precedence).
>> This can have other uses as well, e.g. resolving names even if the header is missing.
>> This currently will only work for id-expressions, I'm assuming you are planning to handle failed namespace lookups, typename lookups, etc. ?
> Err, we don't have a use case for those (yet). Does that mean unless we
> implement namespace, typename etc you don't want to see the patch in? Or
> is it okay with you as is? The others can still be added to
> DynamicLookup later, by whoever needs it.

Well, I would rather see this patch handling the general case (e.g., in Sema::LookupName) rather than just id-expressions, since we don't want to have to augment *every* lookup in Sema with a similar "if (DynamicLookup && DynamicLookup->PerformLookup(R, S))" statement. Did you try that and run into problems?

	- Doug
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-dev/attachments/20110203/0f7d1938/attachment.html>

More information about the cfe-dev mailing list