Author: Vladimir Vereschaka Date: 2020-11-27T15:01:09-08:00 New Revision: 24b3c57adecd0867a2194dfe79643e1f0c962590
URL: https://github.com/llvm/llvm-project/commit/24b3c57adecd0867a2194dfe79643e1f0c962590 DIFF: https://github.com/llvm/llvm-project/commit/24b3c57adecd0867a2194dfe79643e1f0c962590.diff LOG: [libc++] Support no libc++ namespace in the iterator test. The 5f12f4ff9078455cad9d4806da01f570553a5bf9 commit suppress printing of inline namespace names in diagnostics by default that breaks the libc++ iterator test, which expects __1 in the namespace. This patch fixes the test by supporting a test case without __1 in the namespace. Differential Revision: https://reviews.llvm.org/D92142 Added: Modified: libcxx/test/std/iterators/iterator.primitives/iterator.traits/empty.fail.cpp Removed: ################################################################################ diff --git a/libcxx/test/std/iterators/iterator.primitives/iterator.traits/empty.fail.cpp b/libcxx/test/std/iterators/iterator.primitives/iterator.traits/empty.fail.cpp index 728909e693cc..2c75fc8aebf9 100644 --- a/libcxx/test/std/iterators/iterator.primitives/iterator.traits/empty.fail.cpp +++ b/libcxx/test/std/iterators/iterator.primitives/iterator.traits/empty.fail.cpp @@ -67,56 +67,56 @@ int main(int, char**) { { typedef std::iterator_traits<NotAnIteratorEmpty> T; - typedef T:: diff erence_type DT; // expected-error-re {{no type named ' diff erence_type' in 'std::{{.+}}::iterator_traits<{{.+}}>}} - typedef T::value_type VT; // expected-error-re {{no type named 'value_type' in 'std::{{.+}}::iterator_traits<{{.+}}>}} - typedef T::pointer PT; // expected-error-re {{no type named 'pointer' in 'std::{{.+}}::iterator_traits<{{.+}}>}} - typedef T::reference RT; // expected-error-re {{no type named 'reference' in 'std::{{.+}}::iterator_traits<{{.+}}>}} - typedef T::iterator_category CT; // expected-error-re {{no type named 'iterator_category' in 'std::{{.+}}::iterator_traits<{{.+}}>}} + typedef T:: diff erence_type DT; // expected-error-re {{no type named ' diff erence_type' in 'std{{(::.+)?}}::iterator_traits<{{.+}}>}} + typedef T::value_type VT; // expected-error-re {{no type named 'value_type' in 'std{{(::.+)?}}::iterator_traits<{{.+}}>}} + typedef T::pointer PT; // expected-error-re {{no type named 'pointer' in 'std{{(::.+)?}}::iterator_traits<{{.+}}>}} + typedef T::reference RT; // expected-error-re {{no type named 'reference' in 'std{{(::.+)?}}::iterator_traits<{{.+}}>}} + typedef T::iterator_category CT; // expected-error-re {{no type named 'iterator_category' in 'std{{(::.+)?}}::iterator_traits<{{.+}}>}} } { typedef std::iterator_traits<NotAnIteratorNoDifference> T; - typedef T:: diff erence_type DT; // expected-error-re {{no type named ' diff erence_type' in 'std::{{.+}}::iterator_traits<{{.+}}>}} - typedef T::value_type VT; // expected-error-re {{no type named 'value_type' in 'std::{{.+}}::iterator_traits<{{.+}}>}} - typedef T::pointer PT; // expected-error-re {{no type named 'pointer' in 'std::{{.+}}::iterator_traits<{{.+}}>}} - typedef T::reference RT; // expected-error-re {{no type named 'reference' in 'std::{{.+}}::iterator_traits<{{.+}}>}} - typedef T::iterator_category CT; // expected-error-re {{no type named 'iterator_category' in 'std::{{.+}}::iterator_traits<{{.+}}>}} + typedef T:: diff erence_type DT; // expected-error-re {{no type named ' diff erence_type' in 'std{{(::.+)?}}::iterator_traits<{{.+}}>}} + typedef T::value_type VT; // expected-error-re {{no type named 'value_type' in 'std{{(::.+)?}}::iterator_traits<{{.+}}>}} + typedef T::pointer PT; // expected-error-re {{no type named 'pointer' in 'std{{(::.+)?}}::iterator_traits<{{.+}}>}} + typedef T::reference RT; // expected-error-re {{no type named 'reference' in 'std{{(::.+)?}}::iterator_traits<{{.+}}>}} + typedef T::iterator_category CT; // expected-error-re {{no type named 'iterator_category' in 'std{{(::.+)?}}::iterator_traits<{{.+}}>}} } { typedef std::iterator_traits<NotAnIteratorNoValue> T; - typedef T:: diff erence_type DT; // expected-error-re {{no type named ' diff erence_type' in 'std::{{.+}}::iterator_traits<{{.+}}>}} - typedef T::value_type VT; // expected-error-re {{no type named 'value_type' in 'std::{{.+}}::iterator_traits<{{.+}}>}} - typedef T::pointer PT; // expected-error-re {{no type named 'pointer' in 'std::{{.+}}::iterator_traits<{{.+}}>}} - typedef T::reference RT; // expected-error-re {{no type named 'reference' in 'std::{{.+}}::iterator_traits<{{.+}}>}} - typedef T::iterator_category CT; // expected-error-re {{no type named 'iterator_category' in 'std::{{.+}}::iterator_traits<{{.+}}>}} + typedef T:: diff erence_type DT; // expected-error-re {{no type named ' diff erence_type' in 'std{{(::.+)?}}::iterator_traits<{{.+}}>}} + typedef T::value_type VT; // expected-error-re {{no type named 'value_type' in 'std{{(::.+)?}}::iterator_traits<{{.+}}>}} + typedef T::pointer PT; // expected-error-re {{no type named 'pointer' in 'std{{(::.+)?}}::iterator_traits<{{.+}}>}} + typedef T::reference RT; // expected-error-re {{no type named 'reference' in 'std{{(::.+)?}}::iterator_traits<{{.+}}>}} + typedef T::iterator_category CT; // expected-error-re {{no type named 'iterator_category' in 'std{{(::.+)?}}::iterator_traits<{{.+}}>}} } { typedef std::iterator_traits<NotAnIteratorNoPointer> T; - typedef T:: diff erence_type DT; // expected-error-re {{no type named ' diff erence_type' in 'std::{{.+}}::iterator_traits<{{.+}}>}} - typedef T::value_type VT; // expected-error-re {{no type named 'value_type' in 'std::{{.+}}::iterator_traits<{{.+}}>}} - typedef T::pointer PT; // expected-error-re {{no type named 'pointer' in 'std::{{.+}}::iterator_traits<{{.+}}>}} - typedef T::reference RT; // expected-error-re {{no type named 'reference' in 'std::{{.+}}::iterator_traits<{{.+}}>}} - typedef T::iterator_category CT; // expected-error-re {{no type named 'iterator_category' in 'std::{{.+}}::iterator_traits<{{.+}}>}} + typedef T:: diff erence_type DT; // expected-error-re {{no type named ' diff erence_type' in 'std{{(::.+)?}}::iterator_traits<{{.+}}>}} + typedef T::value_type VT; // expected-error-re {{no type named 'value_type' in 'std{{(::.+)?}}::iterator_traits<{{.+}}>}} + typedef T::pointer PT; // expected-error-re {{no type named 'pointer' in 'std{{(::.+)?}}::iterator_traits<{{.+}}>}} + typedef T::reference RT; // expected-error-re {{no type named 'reference' in 'std{{(::.+)?}}::iterator_traits<{{.+}}>}} + typedef T::iterator_category CT; // expected-error-re {{no type named 'iterator_category' in 'std{{(::.+)?}}::iterator_traits<{{.+}}>}} } { typedef std::iterator_traits<NotAnIteratorNoReference> T; - typedef T:: diff erence_type DT; // expected-error-re {{no type named ' diff erence_type' in 'std::{{.+}}::iterator_traits<{{.+}}>}} - typedef T::value_type VT; // expected-error-re {{no type named 'value_type' in 'std::{{.+}}::iterator_traits<{{.+}}>}} - typedef T::pointer PT; // expected-error-re {{no type named 'pointer' in 'std::{{.+}}::iterator_traits<{{.+}}>}} - typedef T::reference RT; // expected-error-re {{no type named 'reference' in 'std::{{.+}}::iterator_traits<{{.+}}>}} - typedef T::iterator_category CT; // expected-error-re {{no type named 'iterator_category' in 'std::{{.+}}::iterator_traits<{{.+}}>}} + typedef T:: diff erence_type DT; // expected-error-re {{no type named ' diff erence_type' in 'std{{(::.+)?}}::iterator_traits<{{.+}}>}} + typedef T::value_type VT; // expected-error-re {{no type named 'value_type' in 'std{{(::.+)?}}::iterator_traits<{{.+}}>}} + typedef T::pointer PT; // expected-error-re {{no type named 'pointer' in 'std{{(::.+)?}}::iterator_traits<{{.+}}>}} + typedef T::reference RT; // expected-error-re {{no type named 'reference' in 'std{{(::.+)?}}::iterator_traits<{{.+}}>}} + typedef T::iterator_category CT; // expected-error-re {{no type named 'iterator_category' in 'std{{(::.+)?}}::iterator_traits<{{.+}}>}} } { typedef std::iterator_traits<NotAnIteratorNoCategory> T; - typedef T:: diff erence_type DT; // expected-error-re {{no type named ' diff erence_type' in 'std::{{.+}}::iterator_traits<{{.+}}>}} - typedef T::value_type VT; // expected-error-re {{no type named 'value_type' in 'std::{{.+}}::iterator_traits<{{.+}}>}} - typedef T::pointer PT; // expected-error-re {{no type named 'pointer' in 'std::{{.+}}::iterator_traits<{{.+}}>}} - typedef T::reference RT; // expected-error-re {{no type named 'reference' in 'std::{{.+}}::iterator_traits<{{.+}}>}} - typedef T::iterator_category CT; // expected-error-re {{no type named 'iterator_category' in 'std::{{.+}}::iterator_traits<{{.+}}>}} + typedef T:: diff erence_type DT; // expected-error-re {{no type named ' diff erence_type' in 'std{{(::.+)?}}::iterator_traits<{{.+}}>}} + typedef T::value_type VT; // expected-error-re {{no type named 'value_type' in 'std{{(::.+)?}}::iterator_traits<{{.+}}>}} + typedef T::pointer PT; // expected-error-re {{no type named 'pointer' in 'std{{(::.+)?}}::iterator_traits<{{.+}}>}} + typedef T::reference RT; // expected-error-re {{no type named 'reference' in 'std{{(::.+)?}}::iterator_traits<{{.+}}>}} + typedef T::iterator_category CT; // expected-error-re {{no type named 'iterator_category' in 'std{{(::.+)?}}::iterator_traits<{{.+}}>}} } return 0; _______________________________________________ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits