This revision was automatically updated to reflect the committed changes.
Closed by commit rL25: [libcxx] Fix undefined behavior in forward_list
(authored by EricWF).
Changed prior to commit:
http://reviews.llvm.org/D15836?vs=46071&id=46073#toc
Repository:
rL LLVM
http://reviews.llvm.or
EricWF accepted this revision.
EricWF added a reviewer: EricWF.
EricWF added a comment.
This revision is now accepted and ready to land.
Accepting on phab to reflect @mclow.lists LGTM.
Comment at: include/forward_list:369
@@ +368,3 @@
+}
+__node_pointer __get_node_unchec
EricWF updated this revision to Diff 46071.
EricWF added a comment.
Address @mclow.lists comment about `__get_node_unchecked()`'s name.
http://reviews.llvm.org/D15836
Files:
include/__config
include/forward_list
test/std/containers/sequences/forwardlist/incomplete.pass.cpp
Index: test/st
mclow.lists added a comment.
This looks good to me.
Comment at: include/forward_list:369
@@ +368,3 @@
+}
+__node_pointer __get_node_unchecked() const {
+return static_cast<__node_pointer>(
I would think about calling this `__get_node_dereferencab
EricWF updated this revision to Diff 43824.
EricWF added a comment.
forward_list and it's iterators should allow incomplete types in C++17 and
beyond. I updated the patch to fix this issue as a drive-by.
http://reviews.llvm.org/D15836
Files:
include/__config
include/forward_list
test/std
EricWF created this revision.
EricWF added a reviewer: mclow.lists.
EricWF added a subscriber: cfe-commits.
This patch is similar to the fix but it has a few differences. This
patch doesn't use a `__link_pointer` typedef because we don't need to change
the linked list pointers because `forward_