[prev in list] [next in list] [prev in thread] [next in thread]
List: cfe-commits
Subject: [PATCH] D26143: [modules] Mark deleted functions as implicitly inline to allow merging
From: Eric Fiselier via cfe-commits <cfe-commits () lists ! llvm ! org>
Date: 2016-10-31 23:16:55
Message-ID: fe6ef2736cc077e83dae3bc5eac274aa () localhost ! localdomain
[Download RAW message or body]
This revision was automatically updated to reflect the committed changes.
Closed by commit rL285655: [modules] Mark deleted functions as implicitly inline to \
allow merging (authored by EricWF).
Changed prior to commit:
https://reviews.llvm.org/D26143?vs=76501&id=76502#toc
https://reviews.llvm.org/D26143
Files:
cfe/trunk/lib/Sema/SemaDeclCXX.cpp
cfe/trunk/test/Modules/Inputs/merge-decl-context/a.h
Index: cfe/trunk/lib/Sema/SemaDeclCXX.cpp
===================================================================
--- cfe/trunk/lib/Sema/SemaDeclCXX.cpp
+++ cfe/trunk/lib/Sema/SemaDeclCXX.cpp
@@ -13875,6 +13875,9 @@
if (Fn->isMain())
Diag(DelLoc, diag::err_deleted_main);
+ // C++11 [dcl.fct.def.delete]p4:
+ // A deleted function is implicitly inline.
+ Fn->setImplicitlyInline();
Fn->setDeletedAsWritten();
}
Index: cfe/trunk/test/Modules/Inputs/merge-decl-context/a.h
===================================================================
--- cfe/trunk/test/Modules/Inputs/merge-decl-context/a.h
+++ cfe/trunk/test/Modules/Inputs/merge-decl-context/a.h
@@ -24,5 +24,6 @@
struct Aggregate {
int member;
};
+bool operator==(Aggregate, Aggregate) = delete;
#endif
["D26143.76502.patch" (text/x-patch)]
Index: cfe/trunk/lib/Sema/SemaDeclCXX.cpp
===================================================================
--- cfe/trunk/lib/Sema/SemaDeclCXX.cpp
+++ cfe/trunk/lib/Sema/SemaDeclCXX.cpp
@@ -13875,6 +13875,9 @@
if (Fn->isMain())
Diag(DelLoc, diag::err_deleted_main);
+ // C++11 [dcl.fct.def.delete]p4:
+ // A deleted function is implicitly inline.
+ Fn->setImplicitlyInline();
Fn->setDeletedAsWritten();
}
Index: cfe/trunk/test/Modules/Inputs/merge-decl-context/a.h
===================================================================
--- cfe/trunk/test/Modules/Inputs/merge-decl-context/a.h
+++ cfe/trunk/test/Modules/Inputs/merge-decl-context/a.h
@@ -24,5 +24,6 @@
struct Aggregate {
int member;
};
+bool operator==(Aggregate, Aggregate) = delete;
#endif
[Attachment #4 (text/plain)]
_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic