[cfe-commits] [patch] Avoid redundant error when redefining a function as deleted

David Blaikie dblaikie at gmail.com
Wed Jun 27 11:10:44 PDT 2012


void func() {}
void func() = delete;

currently produces two errors in Clang - the first says that you are
redefining func, the second says that a deleted definition must be the
first declaration.

This patch suppresses the latter when the function is already defined
(& we will have already produced the former). If we want to produce a
better diagnostic we'd have to plumb through more information from the
parser to sema when we encounter a definition - currently the first
error is produced by sema but without any knowledge about what kind of
definition we are seeing so we can't customize the diagnostic to
explain the specific issue.

Thanks,
- David
-------------- next part --------------
A non-text attachment was scrubbed...
Name: redundant_error_on_deleted_redefinition.diff
Type: application/octet-stream
Size: 1444 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20120627/9b5e1ac0/attachment.obj>


More information about the cfe-commits mailing list