[libcxx-commits] [libcxx] [libcxx] adds ranges::fold_left_with_iter and ranges::fold_left (PR #75259)

Konstantin Varlamov via libcxx-commits libcxx-commits at lists.llvm.org
Fri Dec 15 12:02:54 PST 2023


================
@@ -0,0 +1,202 @@
+//===----------------------------------------------------------------------===//
+//
+// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
+// See https://llvm.org/LICENSE.txt for license information.
+// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
+//
+//===----------------------------------------------------------------------===//
+
+// <algorithm>
+
+// UNSUPPORTED: c++03, c++11, c++14, c++17, c++20
+
+// Checks that `std::ranges::fold_left`'s requirements are correct.
+
+#include <algorithm>
+#include <concepts>
+#include <functional>
+#include <iterator>
+#include <ranges>
+
+#include "test_range.h"
+#include "test_iterators.h"
+#include "../requirements.h"
+
+// expected-error@*:* 19 {{no matching function for call to object of type 'const __fold_left'}}
+
+void test_iterator() {
+  // expected-note@*:*  10 {{candidate template ignored: constraints not satisfied}}
----------------
var-const wrote:

I understand the desire to make sure we get the exact error we expect, but it seems a little overspecified. Can we discuss this on Discord with the broader group?

https://github.com/llvm/llvm-project/pull/75259


More information about the libcxx-commits mailing list