This revision was automatically updated to reflect the committed changes.
Closed by commit rL287999: Adjust type-trait evaluation to properly handle
Using(Shadow)Decls (authored by hfinkel).
Changed prior to commit:
https://reviews.llvm.org/D23765?vs=76817&id=79354#toc
Repository:
rL LLVM
h
rsmith accepted this revision.
rsmith added a comment.
This revision is now accepted and ready to land.
Looks good for trunk and 3.9 branch.
https://reviews.llvm.org/D23765
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.or
gnzlbg added a comment.
ping
https://reviews.llvm.org/D23765
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
twoh updated this revision to Diff 76817.
twoh added a comment.
Addressing comments from @rsmith. Thanks!
https://reviews.llvm.org/D23765
Files:
lib/Sema/SemaExprCXX.cpp
test/SemaCXX/cxx11-crashes.cpp
Index: test/SemaCXX/cxx11-crashes.cpp
==
rsmith added inline comments.
Comment at: lib/Sema/SemaExprCXX.cpp:4390-4391
// resolution point.
if (isa(ND))
continue;
+// UsingDecl itself is not a constructor
You also need to handle the case of an inherited constructor te
twoh marked an inline comment as not done.
twoh added a comment.
Ping
https://reviews.llvm.org/D23765
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
twoh updated this revision to Diff 75441.
twoh marked an inline comment as done.
twoh added a comment.
Addressing comments from @sepavloff. Thanks!
https://reviews.llvm.org/D23765
Files:
lib/Sema/SemaExprCXX.cpp
test/SemaCXX/cxx11-crashes.cpp
Index: test/SemaCXX/cxx11-crashes.cpp
sepavloff added inline comments.
Comment at: lib/Sema/SemaExprCXX.cpp:4231
+const CXXConstructorDecl *Constructor = nullptr;
+if (const ConstructorUsingShadowDecl *CSD =
+dyn_cast(ND)) {
Use `auto` here. Type of `CSD` is clear from `dy
twoh added a comment.
ping
https://reviews.llvm.org/D23765
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
twoh added a comment.
ping
https://reviews.llvm.org/D23765
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
twoh added a comment.
ping
https://reviews.llvm.org/D23765
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
twoh added a comment.
ping
https://reviews.llvm.org/D23765
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
twoh added a comment.
@rsmith Thank you for your review! I added tests to cxx11-crashes.cpp, as the
goal of this patch is not handling __has_* traits right but preventing ICE.
Also, I tried to use ConstructorUsingShadowDecl::getConstructor instead of
ConstructorUsingShadowDecl::getTargetDecl fo
twoh updated this revision to Diff 71711.
twoh added a comment.
Updated diff. For ConstructorUsingShadowDecl, test with its target
CXXConstructorDecl, but only when it is not a default/copy/move constructor.
https://reviews.llvm.org/D23765
Files:
lib/Sema/SemaExprCXX.cpp
test/SemaCXX/cxx11
rsmith added inline comments.
Comment at: lib/Sema/SemaExprCXX.cpp:4227
@@ -4226,1 +4226,3 @@
continue;
+// Using(Shadow)Decl itself is not a constructor
+if (isa(ND) || isa(ND))
This isn't really right: a `UsingShadowDecl` whose underly
twoh updated this revision to Diff 71560.
twoh added a comment.
Tests added
https://reviews.llvm.org/D23765
Files:
lib/Sema/SemaExprCXX.cpp
test/SemaCXX/crash-has-nothrow-constructor.cpp
test/SemaCXX/crash-has-nothrow-copy.cpp
Index: test/SemaCXX/crash-has-nothrow-copy.cpp
==
sepavloff added a subscriber: sepavloff.
sepavloff added a comment.
You need to provide a test for the fix.
https://reviews.llvm.org/D23765
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-co
twoh added a comment.
Ping.
https://reviews.llvm.org/D23765
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
twoh added a comment.
ping
https://reviews.llvm.org/D23765
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
twoh created this revision.
twoh added a reviewer: rsmith.
twoh added a subscriber: cfe-commits.
Since rL274049, for an inheriting constructor declaration, the name of the
using declaration (and using shadow declaration comes from the using
declaration) is the name of a derived class, not the ba
20 matches
Mail list logo