[PATCH] Avoid llvm_unreachable when friend-ing a using declaration
John McCall
rjmccall at apple.com
Tue Mar 19 22:57:22 PDT 2013
On Mar 12, 2013, at 2:30 PM, Stephen Lin <swlin at post.harvard.edu> wrote:
> Hi,
>
> This is a bug fix for LLVM Bugzilla bug #15485 (http://llvm.org/bugs/show_bug.cgi?id=15485)
>
> Basically, llvm_unreachable is currently hit because CheckOverload assumes that a new function declaration in record scope should trigger member function hiding rules, but this is not the case for "friend" declarations.
>
> I believe the code causing the issue is illegal (the friend declaration should not friend the function brought into scope by the using) and should result in an error; this is what happens after the patch without any extra effort (although the error could possibly be improved?).
I agree that the error could be improved. Would you mind tackling that if it's straightforward? It's SemaDecl.cpp:2279. You might need to propagate down isFriend.
John.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20130319/224736f8/attachment.html>
More information about the cfe-commits
mailing list