[all-commits] [llvm/llvm-project] 52d4c5: [libc++] Fix a hard error in `contiguous_iterator<...
Konstantin Varlamov via All-commits
all-commits at lists.llvm.org
Thu Aug 4 10:59:14 PDT 2022
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 52d4c5016c4f8eca6abe84f658fc5f358bdfd2d0
https://github.com/llvm/llvm-project/commit/52d4c5016c4f8eca6abe84f658fc5f358bdfd2d0
Author: Konstantin Varlamov <varconst at apple.com>
Date: 2022-08-04 (Thu, 04 Aug 2022)
Changed paths:
M libcxx/include/__memory/pointer_traits.h
M libcxx/test/std/iterators/iterator.requirements/iterator.concepts/iterator.concept.random.access/contiguous_iterator.compile.pass.cpp
Log Message:
-----------
[libc++] Fix a hard error in `contiguous_iterator<NoOperatorArrowIter>`.
Evaluating `contiguous_iterator` on an iterator that satisfies all the
constraints except the `to_address` constraint and doesn't have
`operator->` defined results in a hard error. This is because
instantiating `to_address` ends up instantiating templates
dependent on the given type which might lead to a hard error even
in a SFINAE context.
Differential Revision: https://reviews.llvm.org/D130835
More information about the All-commits
mailing list