[clang] Add support for builtin_verbose_trap (PR #79230)

2024-06-25 Thread Konstantin Varlamov via cfe-commits
var-const wrote: @ahatanak Thank you so much for pushing this through! This will be awesome for our hardening effort in libc++. Thanks to everyone for all the feedback and discussions as well! https://github.com/llvm/llvm-project/pull/79230 ___

[clang] Add support for builtin_verbose_trap (PR #79230)

2024-06-20 Thread Konstantin Varlamov via cfe-commits
var-const wrote: @dwblaikie @ahatanak Is there anything we can do to move this patch forward? It seems like it's almost ready to go with perhaps one remaining thread of conversation to address. We badly need this functionality in libc++, the lack of error messages when a hardening check is

[clang] Add option -fstdlib-hardening= (PR #78763)

2024-01-30 Thread Konstantin Varlamov via cfe-commits
var-const wrote: I personally think we absolutely should strive to add the `-fhardened` flag in a future LLVM release with semantics broadly compatible with those of GCC. However, we also need a separate way to control how hardening is enabled in libc++. For one, the `-fhardened` flag doesn't

[clang] Add option -fstdlib-hardening= (PR #78763)

2024-01-30 Thread Konstantin Varlamov via cfe-commits
var-const wrote: > I think that may depend on your background. For example, in the C standard > library, there's a whole pile of `WANT` macros that users are expected to > define before including a header file Thanks, this is pretty interesting, and it's true that for users coming from that

[clang] Add option -fstdlib-hardening= (PR #78763)

2024-01-26 Thread Konstantin Varlamov via cfe-commits
var-const wrote: > Yes, please, unless there's a strong reason not to, consider `-fhardened`. `-fhardened` also enables a few compiler flags. I think it would be better to have a separate flag that only affects the library and hopefully in the future start supporting `-fhardened` flag that

[clang] Add support for builtin_verbose_trap (PR #79230)

2024-01-26 Thread Konstantin Varlamov via cfe-commits
https://github.com/var-const approved this pull request. LGTM from the libc++ perspective, thanks a lot for working on this! https://github.com/llvm/llvm-project/pull/79230 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[clang] Add support for builtin_verbose_trap (PR #79230)

2024-01-26 Thread Konstantin Varlamov via cfe-commits
@@ -0,0 +1,28 @@ +// RUN: %clang_cc1 -std=c++11 -fsyntax-only -fcxx-exceptions -verify %s + +#if !__has_builtin(__builtin_verbose_trap) +#error +#endif + +constexpr char const* constMsg1 = "hello"; +char const* const constMsg2 = "hello"; +char const constMsg3[] = "hello"; +

[clang] Add support for builtin_verbose_trap (PR #79230)

2024-01-25 Thread Konstantin Varlamov via cfe-commits
@@ -0,0 +1,28 @@ +// RUN: %clang_cc1 -std=c++11 -fsyntax-only -fcxx-exceptions -verify %s + +#if !__has_builtin(__builtin_verbose_trap) +#error +#endif + +constexpr char const* constMsg1 = "hello"; +char const* const constMsg2 = "hello"; +char const constMsg3[] = "hello"; +

[clang] Add support for builtin_verbose_trap (PR #79230)

2024-01-25 Thread Konstantin Varlamov via cfe-commits
@@ -346,6 +346,14 @@ class CGDebugInfo { const FieldDecl *BitFieldDecl, const llvm::DIDerivedType *BitFieldDI, llvm::ArrayRef PreviousFieldsDI, const RecordDecl *RD); + // A cache that maps artificial inlined function names used for + // __builtin_verbose_trap

[clang] Add support for builtin_verbose_trap (PR #79230)

2024-01-25 Thread Konstantin Varlamov via cfe-commits
https://github.com/var-const commented: >From the libc++ perspective, the only substantial comment I have is that >ideally we need to make sure it's possible to pass long strings with arbitrary >characters as the string parameter (or, if it's infeasible to implement, we >need to document the

[clang] Add support for builtin_verbose_trap (PR #79230)

2024-01-25 Thread Konstantin Varlamov via cfe-commits
https://github.com/var-const edited https://github.com/llvm/llvm-project/pull/79230 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[libcxx] [clang-tools-extra] [clang] [llvm] [libc++][hardening] Categorize assertions related to strict weak ordering (PR #77405)

2024-01-22 Thread Konstantin Varlamov via cfe-commits
@@ -283,9 +283,20 @@ // - `_LIBCPP_ASSERT_COMPATIBLE_ALLOCATOR` -- checks any operations that exchange nodes between containers to make sure // the containers have compatible allocators. // +// - `_LIBCPP_ASSERT_ARGUMENT_WITHIN_DOMAIN` -- checks that the given argument is

[libcxx] [clang-tools-extra] [clang] [llvm] [libc++][hardening] Categorize assertions related to strict weak ordering (PR #77405)

2024-01-21 Thread Konstantin Varlamov via cfe-commits
https://github.com/var-const updated https://github.com/llvm/llvm-project/pull/77405 >From f6a3ba6f2fb00b17182b405312eca4e837fe8977 Mon Sep 17 00:00:00 2001 From: Konstantin Varlamov Date: Mon, 8 Jan 2024 19:09:37 -0800 Subject: [PATCH 1/2] [libc++][hardening] Categorize assertions related to

[clang-tools-extra] [libc] [clang] [flang] [llvm] [libcxx] [compiler-rt] [lld] [mlir] [libc++][hardening] Don't trigger redundant checks in the fast mode. (PR #77176)

2024-01-20 Thread Konstantin Varlamov via cfe-commits
https://github.com/var-const updated https://github.com/llvm/llvm-project/pull/77176 >From f86839d0bfc8b2070127dc3b2c609c2b3f7239ad Mon Sep 17 00:00:00 2001 From: Konstantin Varlamov Date: Fri, 5 Jan 2024 20:08:27 -0800 Subject: [PATCH 1/2] [libc++][hardening] Don't trigger redundant checks in

[libcxx] [clang-tools-extra] [clang] [llvm] [libc++][hardening] Categorize assertions related to strict weak ordering (PR #77405)

2024-01-20 Thread Konstantin Varlamov via cfe-commits
https://github.com/var-const updated https://github.com/llvm/llvm-project/pull/77405 >From f6a3ba6f2fb00b17182b405312eca4e837fe8977 Mon Sep 17 00:00:00 2001 From: Konstantin Varlamov Date: Mon, 8 Jan 2024 19:09:37 -0800 Subject: [PATCH] [libc++][hardening] Categorize assertions related to

[clang-tools-extra] [libc] [clang] [flang] [llvm] [libcxx] [compiler-rt] [lld] [mlir] [libc++][hardening] Classify assertions related to leaks and syscalls. (PR #77164)

2024-01-20 Thread Konstantin Varlamov via cfe-commits
https://github.com/var-const updated https://github.com/llvm/llvm-project/pull/77164 >From e28e7b3e1337cb960cdc8028a70a43740fa7d636 Mon Sep 17 00:00:00 2001 From: Konstantin Varlamov Date: Thu, 21 Dec 2023 14:36:47 -0800 Subject: [PATCH 1/4] [libc++][hardening] Classify assertions related to

[clang-tools-extra] [libc] [clang] [flang] [llvm] [libcxx] [compiler-rt] [lld] [mlir] [libc++][hardening] Categorize assertions that produce incorrect results (PR #77183)

2024-01-20 Thread Konstantin Varlamov via cfe-commits
https://github.com/var-const closed https://github.com/llvm/llvm-project/pull/77183 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang-tools-extra] [libc] [clang] [flang] [llvm] [libcxx] [compiler-rt] [lld] [mlir] [libc++][hardening] Categorize assertions that produce incorrect results (PR #77183)

2024-01-20 Thread Konstantin Varlamov via cfe-commits
https://github.com/var-const updated https://github.com/llvm/llvm-project/pull/77183 >From 2d62194c2c30b5072c8d42bf30d3b5163b1eb844 Mon Sep 17 00:00:00 2001 From: Konstantin Varlamov Date: Fri, 5 Jan 2024 23:34:42 -0800 Subject: [PATCH 1/2] [libc++][hardening] Categorize assertions that

[libcxx] [clang-tools-extra] [clang] [llvm] [libc++][hardening] Categorize assertions that produce incorrect results (PR #77183)

2024-01-20 Thread Konstantin Varlamov via cfe-commits
https://github.com/var-const updated https://github.com/llvm/llvm-project/pull/77183 >From 2d62194c2c30b5072c8d42bf30d3b5163b1eb844 Mon Sep 17 00:00:00 2001 From: Konstantin Varlamov Date: Fri, 5 Jan 2024 23:34:42 -0800 Subject: [PATCH 1/2] [libc++][hardening] Categorize assertions that

[clang-tools-extra] [clang] [llvm] [libcxx] [libc++][hardening] Classify assertions related to leaks and syscalls. (PR #77164)

2024-01-20 Thread Konstantin Varlamov via cfe-commits
https://github.com/var-const updated https://github.com/llvm/llvm-project/pull/77164 >From e28e7b3e1337cb960cdc8028a70a43740fa7d636 Mon Sep 17 00:00:00 2001 From: Konstantin Varlamov Date: Thu, 21 Dec 2023 14:36:47 -0800 Subject: [PATCH 1/4] [libc++][hardening] Classify assertions related to

[libcxx] [llvm] [clang] [clang-tools-extra] [libc++][hardening] Classify assertions related to leaks and syscalls. (PR #77164)

2024-01-19 Thread Konstantin Varlamov via cfe-commits
https://github.com/var-const updated https://github.com/llvm/llvm-project/pull/77164 >From e28e7b3e1337cb960cdc8028a70a43740fa7d636 Mon Sep 17 00:00:00 2001 From: Konstantin Varlamov Date: Thu, 21 Dec 2023 14:36:47 -0800 Subject: [PATCH 1/3] [libc++][hardening] Classify assertions related to

[libcxx] [llvm] [clang] [clang-tools-extra] [libc++][hardening] Don't trigger redundant checks in the fast mode. (PR #77176)

2024-01-19 Thread Konstantin Varlamov via cfe-commits
https://github.com/var-const updated https://github.com/llvm/llvm-project/pull/77176 >From f86839d0bfc8b2070127dc3b2c609c2b3f7239ad Mon Sep 17 00:00:00 2001 From: Konstantin Varlamov Date: Fri, 5 Jan 2024 20:08:27 -0800 Subject: [PATCH 1/2] [libc++][hardening] Don't trigger redundant checks in

[clang-tools-extra] [libcxx] [llvm] [clang] [libc++][hardening] Classify assertions related to leaks and syscalls. (PR #77164)

2024-01-19 Thread Konstantin Varlamov via cfe-commits
https://github.com/var-const updated https://github.com/llvm/llvm-project/pull/77164 >From e28e7b3e1337cb960cdc8028a70a43740fa7d636 Mon Sep 17 00:00:00 2001 From: Konstantin Varlamov Date: Thu, 21 Dec 2023 14:36:47 -0800 Subject: [PATCH 1/2] [libc++][hardening] Classify assertions related to

[llvm] [clang-tools-extra] [clang] [libcxx] [libcxx] adds ranges::fold_left_with_iter and ranges::fold_left (PR #75259)

2023-12-21 Thread Konstantin Varlamov via cfe-commits
@@ -0,0 +1,104 @@ +//===--===// +// +// 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:

[clang] [libcxx] [clang-tools-extra] [llvm] [libcxx] adds ranges::fold_left_with_iter and ranges::fold_left (PR #75259)

2023-12-20 Thread Konstantin Varlamov via cfe-commits
var-const wrote: > I see @var-const has "requested changes" set, but I feel we've addressed the > one unresolved comment of his. @EricWF In fact, this patch changed quite significantly since I last looked at it (based on your feedback, I believe), so I would have appreciated being able to do

[llvm] [clang] [clang-tools-extra] [libcxx] [libcxx] adds ranges::fold_left_with_iter and ranges::fold_left (PR #75259)

2023-12-20 Thread Konstantin Varlamov via cfe-commits
@@ -0,0 +1,104 @@ +//===--===// +// +// 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:

[libcxx] [llvm] [clang-tools-extra] [clang] [libcxx] adds ranges::fold_left_with_iter and ranges::fold_left (PR #75259)

2023-12-20 Thread Konstantin Varlamov via cfe-commits
@@ -0,0 +1,104 @@ +//===--===// +// +// 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:

[libcxx] [clang] [clang-tools-extra] [llvm] [libcxx] adds ranges::fold_left_with_iter and ranges::fold_left (PR #75259)

2023-12-20 Thread Konstantin Varlamov via cfe-commits
@@ -0,0 +1,104 @@ +//===--===// +// +// 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:

[clang] [clang-tools-extra] [llvm] [libcxx] [libcxx] adds ranges::fold_left_with_iter and ranges::fold_left (PR #75259)

2023-12-20 Thread Konstantin Varlamov via cfe-commits
https://github.com/var-const commented: This patch has changed substantially since I last reviewed it. I'll send more feedback in a follow-up review. https://github.com/llvm/llvm-project/pull/75259 ___ cfe-commits mailing list

[clang-tools-extra] [llvm] [libcxx] [clang] [libcxx] adds ranges::fold_left_with_iter and ranges::fold_left (PR #75259)

2023-12-20 Thread Konstantin Varlamov via cfe-commits
@@ -0,0 +1,315 @@ +//===--===// +// +// 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:

[llvm] [libcxx] [clang-tools-extra] [clang] [libcxx] adds ranges::fold_left_with_iter and ranges::fold_left (PR #75259)

2023-12-20 Thread Konstantin Varlamov via cfe-commits
@@ -0,0 +1,89 @@ +//===--===// +// +// 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:

[clang] [clang-tools-extra] [llvm] [libcxx] [libcxx] adds ranges::fold_left_with_iter and ranges::fold_left (PR #75259)

2023-12-20 Thread Konstantin Varlamov via cfe-commits
@@ -0,0 +1,118 @@ +// -*- C++ -*- +//===--===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +//

[libcxx] [llvm] [clang-tools-extra] [clang] [libcxx] adds ranges::fold_left_with_iter and ranges::fold_left (PR #75259)

2023-12-20 Thread Konstantin Varlamov via cfe-commits
@@ -0,0 +1,118 @@ +// -*- C++ -*- +//===--===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +//

[llvm] [libcxx] [clang-tools-extra] [clang] [libcxx] adds ranges::fold_left_with_iter and ranges::fold_left (PR #75259)

2023-12-20 Thread Konstantin Varlamov via cfe-commits
@@ -0,0 +1,259 @@ +//===--===// +// +// 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:

[llvm] [libcxx] [clang-tools-extra] [clang] [libcxx] adds ranges::fold_left_with_iter and ranges::fold_left (PR #75259)

2023-12-20 Thread Konstantin Varlamov via cfe-commits
https://github.com/var-const edited https://github.com/llvm/llvm-project/pull/75259 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [libcxx] [clang-tools-extra] [llvm] [libcxx] adds ranges::fold_left_with_iter and ranges::fold_left (PR #75259)

2023-12-20 Thread Konstantin Varlamov via cfe-commits
@@ -0,0 +1,89 @@ +//===--===// +// +// 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:

[llvm] [lldb] [mlir] [clang-tools-extra] [libcxx] [compiler-rt] [lld] [clang] [libc++][ranges] Implement ranges::contains_subrange (PR #66963)

2023-12-18 Thread Konstantin Varlamov via cfe-commits
@@ -0,0 +1,303 @@ +//===--===// +// +// 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:

[flang] [mlir] [compiler-rt] [lldb] [clang] [llvm] [lld] [clang-tools-extra] [libunwind] [libc] [openmp] [libcxxabi] [libcxx] [libc++] Implement ranges::contains (PR #65148)

2023-12-14 Thread Konstantin Varlamov via cfe-commits
@@ -34,6 +35,10 @@ struct __identity { template <> struct __is_identity<__identity> : true_type {}; +template <> var-const wrote: Can you elaborate on your concerns here? https://github.com/llvm/llvm-project/pull/65148

[openmp] [clang-tools-extra] [clang] [libunwind] [libc] [mlir] [llvm] [lld] [libcxx] [lldb] [compiler-rt] [libcxxabi] [flang] [libc++] Implement ranges::contains (PR #65148)

2023-12-14 Thread Konstantin Varlamov via cfe-commits
@@ -0,0 +1,195 @@ +//===--===// +// +// 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:

[flang] [mlir] [compiler-rt] [lldb] [clang] [llvm] [lld] [clang-tools-extra] [libunwind] [libc] [openmp] [libcxxabi] [libcxx] [libc++] Implement ranges::contains (PR #65148)

2023-12-14 Thread Konstantin Varlamov via cfe-commits
@@ -0,0 +1,61 @@ +//===--===// +// +// 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:

[lld] [llvm] [mlir] [compiler-rt] [clang] [libcxx] [clang-tools-extra] [lldb] [libc++][ranges] Implement ranges::contains_subrange (PR #66963)

2023-12-12 Thread Konstantin Varlamov via cfe-commits
https://github.com/var-const unassigned https://github.com/llvm/llvm-project/pull/66963 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[llvm] [compiler-rt] [lldb] [clang] [clang-tools-extra] [lld] [mlir] [libcxx] [libc++][ranges] Implement ranges::contains_subrange (PR #66963)

2023-12-12 Thread Konstantin Varlamov via cfe-commits
https://github.com/var-const unassigned https://github.com/llvm/llvm-project/pull/66963 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[libcxxabi] [libc] [mlir] [clang-tools-extra] [lld] [llvm] [libcxx] [libunwind] [flang] [clang] [compiler-rt] [lldb] [libc++] Implement ranges::contains (PR #65148)

2023-12-12 Thread Konstantin Varlamov via cfe-commits
@@ -0,0 +1,49 @@ +//===--===// var-const wrote: Thanks a lot for adding the benchmark! Can you please post the results you're getting in the patch/commit description for potential future

[libunwind] [llvm] [libcxxabi] [compiler-rt] [clang-tools-extra] [lld] [libcxx] [flang] [lldb] [clang] [libc] [mlir] [libc++] Implement ranges::contains (PR #65148)

2023-12-12 Thread Konstantin Varlamov via cfe-commits
https://github.com/var-const edited https://github.com/llvm/llvm-project/pull/65148 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[mlir] [flang] [llvm] [libc] [libunwind] [lldb] [libcxxabi] [clang] [libcxx] [lld] [clang-tools-extra] [compiler-rt] [libc++] Implement ranges::contains (PR #65148)

2023-12-12 Thread Konstantin Varlamov via cfe-commits
@@ -0,0 +1,49 @@ +//===--===// +// +// 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:

[libunwind] [llvm] [clang-tools-extra] [clang] [mlir] [libc] [lldb] [libcxx] [lld] [compiler-rt] [libcxxabi] [flang] [libc++] Implement ranges::contains (PR #65148)

2023-12-12 Thread Konstantin Varlamov via cfe-commits
https://github.com/var-const approved this pull request. Thanks a lot for working on this! LGTM with a couple simple comments. https://github.com/llvm/llvm-project/pull/65148 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[llvm] [clang] [libc++][hardening] Fix references to old names for hardening modes (PR #71743)

2023-11-08 Thread Konstantin Varlamov via cfe-commits
https://github.com/var-const closed https://github.com/llvm/llvm-project/pull/71743 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [libc++][hardening] Fix references to old names for hardening modes (PR #71743)

2023-11-08 Thread Konstantin Varlamov via cfe-commits
https://github.com/var-const created https://github.com/llvm/llvm-project/pull/71743 This should fix some builds broken by https://github.com/llvm/llvm-project/pull/70575 >From 11dad502fa66c6f7d0377a554c7f22ef21a9faee Mon Sep 17 00:00:00 2001 From: Konstantin Varlamov Date: Wed, 8 Nov 2023

[clang] [libc++][ranges] Implement ranges::contains_subrange (PR #66963)

2023-10-13 Thread Konstantin Varlamov via cfe-commits
@@ -0,0 +1,303 @@ +//===--===// +// +// 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:

[clang] [libc++][ranges] Implement ranges::contains_subrange (PR #66963)

2023-10-13 Thread Konstantin Varlamov via cfe-commits
@@ -0,0 +1,303 @@ +//===--===// +// +// 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:

[clang] [libc++][ranges] Implement ranges::contains_subrange (PR #66963)

2023-10-13 Thread Konstantin Varlamov via cfe-commits
https://github.com/var-const requested changes to this pull request. Thank you for the patch! https://github.com/llvm/llvm-project/pull/66963 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[clang] [libc++][ranges] Implement ranges::contains_subrange (PR #66963)

2023-10-13 Thread Konstantin Varlamov via cfe-commits
https://github.com/var-const edited https://github.com/llvm/llvm-project/pull/66963 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [libc++][ranges] Implement ranges::contains_subrange (PR #66963)

2023-10-13 Thread Konstantin Varlamov via cfe-commits
@@ -0,0 +1,303 @@ +//===--===// +// +// 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:

[clang] [libc++][ranges] Implement ranges::contains_subrange (PR #66963)

2023-10-13 Thread Konstantin Varlamov via cfe-commits
@@ -0,0 +1,303 @@ +//===--===// +// +// 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:

[clang] [libc++][ranges] Implement ranges::contains_subrange (PR #66963)

2023-10-13 Thread Konstantin Varlamov via cfe-commits
@@ -214,6 +214,19 @@ namespace ranges { constexpr ranges::minmax_element_result> minmax_element(R&& r, Comp comp = {}, Proj proj = {}); // since C++20 + template S1, forward_iterator I2, +sentinel_for S2, class Pred

[clang] [libc++][ranges] Implement ranges::contains_subrange (PR #66963)

2023-10-13 Thread Konstantin Varlamov via cfe-commits
@@ -0,0 +1,303 @@ +//===--===// +// +// 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:

[clang-tools-extra] [libc++][ranges] Implement ranges::contains_subrange (PR #66963)

2023-10-13 Thread Konstantin Varlamov via cfe-commits
https://github.com/var-const edited https://github.com/llvm/llvm-project/pull/66963 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [libc++][ranges] Implement ranges::contains_subrange (PR #66963)

2023-10-13 Thread Konstantin Varlamov via cfe-commits
@@ -0,0 +1,303 @@ +//===--===// +// +// 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:

[clang-tools-extra] [libc++][ranges] Implement ranges::contains_subrange (PR #66963)

2023-10-13 Thread Konstantin Varlamov via cfe-commits
https://github.com/var-const requested changes to this pull request. Thank you for the patch! https://github.com/llvm/llvm-project/pull/66963 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[clang-tools-extra] [libc++][ranges] Implement ranges::contains_subrange (PR #66963)

2023-10-13 Thread Konstantin Varlamov via cfe-commits
@@ -0,0 +1,303 @@ +//===--===// +// +// 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:

[clang-tools-extra] [libc++][ranges] Implement ranges::contains_subrange (PR #66963)

2023-10-13 Thread Konstantin Varlamov via cfe-commits
https://github.com/var-const edited https://github.com/llvm/llvm-project/pull/66963 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [libc++][ranges] Implement ranges::contains_subrange (PR #66963)

2023-10-13 Thread Konstantin Varlamov via cfe-commits
https://github.com/var-const edited https://github.com/llvm/llvm-project/pull/66963 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang-tools-extra] [libc++] Implement ranges::contains_subrange (PR #66963)

2023-10-13 Thread Konstantin Varlamov via cfe-commits
var-const wrote: > > Please make sure you add a description to your PR. This is what usually > > goes into the git log and we want those entries to be as descriptive and > > helpful for folks who read the git logs, thank you. > > Do you have any specific suggestions what should be in the

[clang-tools-extra] [libc++] Implement ranges::contains (PR #65148)

2023-10-03 Thread Konstantin Varlamov via cfe-commits
@@ -0,0 +1,61 @@ +//===--===// +// +// 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:

[clang] [libc++] Implement ranges::contains (PR #65148)

2023-10-03 Thread Konstantin Varlamov via cfe-commits
@@ -0,0 +1,61 @@ +//===--===// +// +// 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:

[libunwind] [libc++] Implement ranges::contains (PR #65148)

2023-10-03 Thread Konstantin Varlamov via cfe-commits
@@ -0,0 +1,61 @@ +//===--===// +// +// 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:

[clang] [libc++] Implement ranges::contains (PR #65148)

2023-10-02 Thread Konstantin Varlamov via cfe-commits
@@ -0,0 +1,190 @@ +//===--===// +// +// 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:

[libunwind] [libc++] Implement ranges::contains (PR #65148)

2023-10-02 Thread Konstantin Varlamov via cfe-commits
@@ -0,0 +1,190 @@ +//===--===// +// +// 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:

[clang-tools-extra] [libc++] Implement ranges::contains (PR #65148)

2023-10-02 Thread Konstantin Varlamov via cfe-commits
@@ -0,0 +1,190 @@ +//===--===// +// +// 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:

[clang-tools-extra] [libc++] Implement ranges::contains (PR #65148)

2023-10-02 Thread Konstantin Varlamov via cfe-commits
https://github.com/var-const unassigned https://github.com/llvm/llvm-project/pull/65148 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [libc++] Implement ranges::contains (PR #65148)

2023-10-02 Thread Konstantin Varlamov via cfe-commits
https://github.com/var-const unassigned https://github.com/llvm/llvm-project/pull/65148 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang-tools-extra] [libc++] Implement ranges::contains (PR #65148)

2023-10-02 Thread Konstantin Varlamov via cfe-commits
@@ -0,0 +1,252 @@ +//===--===// +// +// 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:

[libunwind] [libc++] Implement ranges::contains (PR #65148)

2023-10-02 Thread Konstantin Varlamov via cfe-commits
@@ -0,0 +1,252 @@ +//===--===// +// +// 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:

[clang] [libc++] Implement ranges::contains (PR #65148)

2023-10-02 Thread Konstantin Varlamov via cfe-commits
@@ -0,0 +1,61 @@ +//===--===// +// +// 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:

[libunwind] [libc++] Implement ranges::contains (PR #65148)

2023-10-02 Thread Konstantin Varlamov via cfe-commits
@@ -0,0 +1,252 @@ +//===--===// +// +// 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:

[libunwind] [libc++] Implement ranges::contains (PR #65148)

2023-10-02 Thread Konstantin Varlamov via cfe-commits
https://github.com/var-const unassigned https://github.com/llvm/llvm-project/pull/65148 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [libc++] Implement ranges::contains (PR #65148)

2023-10-02 Thread Konstantin Varlamov via cfe-commits
https://github.com/var-const requested changes to this pull request. Thanks for addressing most of the feedback! Did another round. https://github.com/llvm/llvm-project/pull/65148 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[clang-tools-extra] [libc++] Implement ranges::contains (PR #65148)

2023-10-02 Thread Konstantin Varlamov via cfe-commits
@@ -0,0 +1,252 @@ +//===--===// +// +// 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:

[clang-tools-extra] [libc++] Implement ranges::contains (PR #65148)

2023-10-02 Thread Konstantin Varlamov via cfe-commits
@@ -0,0 +1,252 @@ +//===--===// var-const wrote: Can you please go through various `robust` test files and add tests for `contains` where it makes sense? Let me know if you need any help with

[clang-tools-extra] [libc++] Implement ranges::contains (PR #65148)

2023-10-02 Thread Konstantin Varlamov via cfe-commits
@@ -0,0 +1,252 @@ +//===--===// +// +// 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:

[clang] [libc++] Implement ranges::contains (PR #65148)

2023-10-02 Thread Konstantin Varlamov via cfe-commits
@@ -0,0 +1,252 @@ +//===--===// +// +// 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:

[libunwind] [libc++] Implement ranges::contains (PR #65148)

2023-10-02 Thread Konstantin Varlamov via cfe-commits
@@ -0,0 +1,61 @@ +//===--===// +// +// 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:

[clang-tools-extra] [libc++] Implement ranges::contains (PR #65148)

2023-10-02 Thread Konstantin Varlamov via cfe-commits
@@ -0,0 +1,252 @@ +//===--===// +// +// 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:

[clang-tools-extra] [libc++] Implement ranges::contains (PR #65148)

2023-09-07 Thread Konstantin Varlamov via cfe-commits
@@ -0,0 +1,190 @@ +//===--===// +// +// 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:

[clang] [libc++] Implement ranges::contains (PR #65148)

2023-09-07 Thread Konstantin Varlamov via cfe-commits
@@ -0,0 +1,190 @@ +//===--===// +// +// 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:

[clang-tools-extra] [libc++] Implement ranges::contains (PR #65148)

2023-09-07 Thread Konstantin Varlamov via cfe-commits
@@ -0,0 +1,190 @@ +//===--===// +// +// 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:

[clang] [libc++] Implement ranges::contains (PR #65148)

2023-09-07 Thread Konstantin Varlamov via cfe-commits
@@ -0,0 +1,190 @@ +//===--===// +// +// 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:

[clang-tools-extra] [libc++] Implement ranges::contains (PR #65148)

2023-09-07 Thread Konstantin Varlamov via cfe-commits
@@ -0,0 +1,190 @@ +//===--===// +// +// 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:

[clang] [libc++] Implement ranges::contains (PR #65148)

2023-09-07 Thread Konstantin Varlamov via cfe-commits
@@ -0,0 +1,190 @@ +//===--===// +// +// 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:

[clang] [libc++] Implement ranges::contains (PR #65148)

2023-09-01 Thread Konstantin Varlamov via cfe-commits
@@ -0,0 +1,190 @@ +//===--===// +// +// 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:

[clang] [libc++] Implement ranges::contains (PR #65148)

2023-09-01 Thread Konstantin Varlamov via cfe-commits
@@ -0,0 +1,190 @@ +//===--===// +// +// 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:

[clang] [libc++] Implement ranges::contains (PR #65148)

2023-09-01 Thread Konstantin Varlamov via cfe-commits
@@ -0,0 +1,190 @@ +//===--===// +// +// 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:

[clang-tools-extra] [libc++] Implement ranges::contains (PR #65148)

2023-09-01 Thread Konstantin Varlamov via cfe-commits
@@ -0,0 +1,190 @@ +//===--===// +// +// 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:

[clang-tools-extra] [libc++] Implement ranges::contains (PR #65148)

2023-09-01 Thread Konstantin Varlamov via cfe-commits
@@ -0,0 +1,190 @@ +//===--===// +// +// 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:

[clang-tools-extra] [libc++] Implement ranges::contains (PR #65148)

2023-09-01 Thread Konstantin Varlamov via cfe-commits
@@ -0,0 +1,190 @@ +//===--===// +// +// 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:

[clang] [libc++] Implement ranges::contains (PR #65148)

2023-09-01 Thread Konstantin Varlamov via cfe-commits
@@ -0,0 +1,190 @@ +//===--===// +// +// 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:

[clang-tools-extra] [libc++] Implement ranges::contains (PR #65148)

2023-09-01 Thread Konstantin Varlamov via cfe-commits
@@ -0,0 +1,190 @@ +//===--===// +// +// 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:

[clang] [libc++] Implement ranges::contains (PR #65148)

2023-09-01 Thread Konstantin Varlamov via cfe-commits
@@ -0,0 +1,190 @@ +//===--===// +// +// 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:

[clang] [libc++] Implement ranges::contains (PR #65148)

2023-09-01 Thread Konstantin Varlamov via cfe-commits
@@ -0,0 +1,190 @@ +//===--===// +// +// 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:

[clang-tools-extra] [libc++] Implement ranges::contains (PR #65148)

2023-09-01 Thread Konstantin Varlamov via cfe-commits
@@ -0,0 +1,190 @@ +//===--===// +// +// 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:

  1   2   >