This revision was automatically updated to reflect the committed changes.
Closed by commit rL270535: [MSVC2015] dllexport for defaulted special class
members (authored by dpolukhin).
Changed prior to commit:
http://reviews.llvm.org/D20422?vs=58088&id=58197#toc
Repository:
rL LLVM
http://rev
rnk accepted this revision.
rnk added a comment.
This revision is now accepted and ready to land.
lgtm
Thanks!
http://reviews.llvm.org/D20422
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe
DmitryPolukhin added a comment.
PTAL
Comment at: lib/Sema/SemaDeclCXX.cpp:13113-13114
@@ -13065,28 +13112,4 @@
-if (MD->isInvalidDecl())
- return;
-
-switch (Member) {
-case CXXDefaultConstructor:
- DefineImplicitDefaultConstructor(DefaultLoc,
-
DmitryPolukhin updated this revision to Diff 58088.
DmitryPolukhin added a comment.
- drop dllexport for trivial defaulted x-tors for compatibility with MSVC2015
- move checks to CheckCompletedCXXClass because completed class definition is
required to detect if x-tor is trivial
http://reviews.l
rnk added inline comments.
Comment at: lib/Sema/SemaDeclCXX.cpp:13111
@@ -13090,3 +13110,3 @@
llvm_unreachable("Invalid special member.");
}
} else {
DmitryPolukhin wrote:
> rnk wrote:
> > Can we add `if (InClassDef) ActOnFinishInlineFunctionDef(MD)
DmitryPolukhin added inline comments.
Comment at: lib/Sema/SemaDeclCXX.cpp:13111
@@ -13090,3 +13110,3 @@
llvm_unreachable("Invalid special member.");
}
} else {
rnk wrote:
> Can we add `if (InClassDef) ActOnFinishInlineFunctionDef(MD);` here instead
DmitryPolukhin updated this revision to Diff 57896.
DmitryPolukhin marked 2 inline comments as done.
DmitryPolukhin added a comment.
Comments resolved, PTAL.
http://reviews.llvm.org/D20422
Files:
lib/Sema/SemaDeclCXX.cpp
test/CodeGenCXX/dllexport-members.cpp
test/CodeGenCXX/dllexport.cpp
rnk added inline comments.
Comment at: lib/Sema/SemaDeclCXX.cpp:4814
@@ -4813,3 +4813,3 @@
// we have a definition.
auto *CXXC = dyn_cast(MD);
if ((MD->isMoveAssignmentOperator() ||
nit, can you rename this Ctor? I definitely know that t
DmitryPolukhin created this revision.
DmitryPolukhin added a reviewer: rnk.
DmitryPolukhin added a subscriber: cfe-commits.
Clang doesn't dllexport defaulted special member function defaulted inside
class but does it if they defaulted outside class. MSVC doesn't make any
distinction where they w