[flang] [llvm] [libc] [lldb] [clang] [compiler-rt] [libunwind] [libcxx] [clang-tools-extra] [libc++] Implement ranges::iota (PR #68494)

2024-01-15 Thread James E T Smith via cfe-commits
@@ -1149,9 +1171,11 @@ struct Proxy { // Calling swap(Proxy{}, Proxy{}) would fail (pass prvalues) // Compare operators are defined for the convenience of the tests - friend constexpr bool operator==(const Proxy&, const Proxy&) -requires (std::equality_comparable &&

[flang] [compiler-rt] [libunwind] [libc] [libcxx] [llvm] [clang] [lldb] [clang-tools-extra] [libc++] Implement ranges::iota (PR #68494)

2024-01-09 Thread James E T Smith via cfe-commits
@@ -0,0 +1,123 @@ +//===--===// +// +// 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] [libunwind] [flang] [libc] [lldb] [compiler-rt] [clang] [clang-tools-extra] [libc++] Implement ranges::iota (PR #68494)

2024-01-05 Thread James E T Smith via cfe-commits
@@ -0,0 +1,123 @@ +//===--===// +// +// 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] [compiler-rt] [libunwind] [flang] [llvm] [libcxx] [libc] [lldb] [clang-tools-extra] [libc++] Implement ranges::iota (PR #68494)

2024-01-05 Thread Nikolas Klauser via cfe-commits
@@ -0,0 +1,123 @@ +//===--===// +// +// 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] [flang] [clang] [compiler-rt] [libc] [clang-tools-extra] [libc++] Implement ranges::iota (PR #68494)

2023-12-16 Thread James E T Smith via cfe-commits
https://github.com/jamesETsmith updated https://github.com/llvm/llvm-project/pull/68494 >From c4a3ccfbad090ad8314aa8ad53092edc8d5432bc Mon Sep 17 00:00:00 2001 From: James Smith Date: Thu, 28 Sep 2023 10:11:15 -0400 Subject: [PATCH 01/17] [libc++] Implement ranges::iota and

[flang] [libcxx] [libc] [clang] [llvm] [compiler-rt] [clang-tools-extra] [libc++] Implement ranges::iota (PR #68494)

2023-11-05 Thread James E T Smith via cfe-commits
https://github.com/jamesETsmith updated https://github.com/llvm/llvm-project/pull/68494 >From c4a3ccfbad090ad8314aa8ad53092edc8d5432bc Mon Sep 17 00:00:00 2001 From: James Smith Date: Thu, 28 Sep 2023 10:11:15 -0400 Subject: [PATCH 01/17] [libc++] Implement ranges::iota and

[flang] [libcxx] [libc] [clang] [llvm] [compiler-rt] [clang-tools-extra] [libc++] Implement ranges::iota (PR #68494)

2023-11-05 Thread James E T Smith via cfe-commits
https://github.com/jamesETsmith edited https://github.com/llvm/llvm-project/pull/68494 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[libc] [clang] [libcxx] [flang] [llvm] [compiler-rt] [clang-tools-extra] [libc++] Implement ranges::iota (PR #68494)

2023-11-04 Thread James E T Smith via cfe-commits
https://github.com/jamesETsmith updated https://github.com/llvm/llvm-project/pull/68494 >From c4a3ccfbad090ad8314aa8ad53092edc8d5432bc Mon Sep 17 00:00:00 2001 From: James Smith Date: Thu, 28 Sep 2023 10:11:15 -0400 Subject: [PATCH 01/16] [libc++] Implement ranges::iota and

[libc] [clang] [libcxx] [flang] [llvm] [compiler-rt] [clang-tools-extra] [libc++] Implement ranges::iota (PR #68494)

2023-11-04 Thread James E T Smith via cfe-commits
https://github.com/jamesETsmith updated https://github.com/llvm/llvm-project/pull/68494 >From c4a3ccfbad090ad8314aa8ad53092edc8d5432bc Mon Sep 17 00:00:00 2001 From: James Smith Date: Thu, 28 Sep 2023 10:11:15 -0400 Subject: [PATCH 01/16] [libc++] Implement ranges::iota and

[clang-tools-extra] [libc++] Implement ranges::iota (PR #68494)

2023-10-30 Thread James E T Smith via cfe-commits
https://github.com/jamesETsmith updated https://github.com/llvm/llvm-project/pull/68494 >From c4a3ccfbad090ad8314aa8ad53092edc8d5432bc Mon Sep 17 00:00:00 2001 From: James Smith Date: Thu, 28 Sep 2023 10:11:15 -0400 Subject: [PATCH 01/14] [libc++] Implement ranges::iota and

[clang-tools-extra] [libc++] Implement ranges::iota (PR #68494)

2023-10-30 Thread James E T Smith via cfe-commits
https://github.com/jamesETsmith updated https://github.com/llvm/llvm-project/pull/68494 >From c4a3ccfbad090ad8314aa8ad53092edc8d5432bc Mon Sep 17 00:00:00 2001 From: James Smith Date: Thu, 28 Sep 2023 10:11:15 -0400 Subject: [PATCH 01/14] [libc++] Implement ranges::iota and

[clang-tools-extra] [libc++] Implement ranges::iota (PR #68494)

2023-10-30 Thread James E T Smith via cfe-commits
https://github.com/jamesETsmith updated https://github.com/llvm/llvm-project/pull/68494 >From c4a3ccfbad090ad8314aa8ad53092edc8d5432bc Mon Sep 17 00:00:00 2001 From: James Smith Date: Thu, 28 Sep 2023 10:11:15 -0400 Subject: [PATCH 01/13] [libc++] Implement ranges::iota and

[clang-tools-extra] [libc++] Implement ranges::iota (PR #68494)

2023-10-27 Thread James E T Smith via cfe-commits
jamesETsmith wrote: The strategy using `ProxyDiffTBase` is implemented in 88e271a. Initially, it caused a bunch of errors elsewhere because the compiler generated `==` and `<=>` member functions would cause checks like `std::totally_ordered_with, Proxy&>` to fail (see

[clang-tools-extra] [libc++] Implement ranges::iota (PR #68494)

2023-10-27 Thread James E T Smith via cfe-commits
https://github.com/jamesETsmith updated https://github.com/llvm/llvm-project/pull/68494 >From c4a3ccfbad090ad8314aa8ad53092edc8d5432bc Mon Sep 17 00:00:00 2001 From: James Smith Date: Thu, 28 Sep 2023 10:11:15 -0400 Subject: [PATCH 01/11] [libc++] Implement ranges::iota and

[clang-tools-extra] [libc++] Implement ranges::iota (PR #68494)

2023-10-27 Thread via cfe-commits
philnik777 wrote: You should make the operators conditionally available based on whether the underlying type has them. The rest looks good. https://github.com/llvm/llvm-project/pull/68494 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[clang-tools-extra] [libc++] Implement ranges::iota (PR #68494)

2023-10-27 Thread James E T Smith via cfe-commits
jamesETsmith wrote: @philnik777, I think you're right that `Proxy` is missing a few member functions (and type aliases). Here's a minimal example of my additions to it: https://godbolt.org/z/8T9eqjjEj. If that seems reasonable, I'll update `test_iterators.h`.

[clang-tools-extra] [libc++] Implement ranges::iota (PR #68494)

2023-10-27 Thread via cfe-commits
philnik777 wrote: Why does the proxy not satisfy `weakly_incrementable`? Is it maybe just missing some member functions? https://github.com/llvm/llvm-project/pull/68494 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[clang-tools-extra] [libc++] Implement ranges::iota (PR #68494)

2023-10-26 Thread James E T Smith via cfe-commits
https://github.com/jamesETsmith edited https://github.com/llvm/llvm-project/pull/68494 ___ 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::iota (PR #68494)

2023-10-26 Thread James E T Smith via cfe-commits
https://github.com/jamesETsmith updated https://github.com/llvm/llvm-project/pull/68494 >From c4a3ccfbad090ad8314aa8ad53092edc8d5432bc Mon Sep 17 00:00:00 2001 From: James Smith Date: Thu, 28 Sep 2023 10:11:15 -0400 Subject: [PATCH 01/10] [libc++] Implement ranges::iota and

[clang-tools-extra] [libc++] Implement ranges::iota (PR #68494)

2023-10-26 Thread James E T Smith via cfe-commits
jamesETsmith wrote: @philnik777, I've added tests for `ranges::iota` to several of the `ranges_robust_against_*` tests where I thought it was appropriate. Below is a breakdown (mostly for my own tracking) of what I've done and what I'm still sorting through

[clang-tools-extra] [libc++] Implement ranges::iota (PR #68494)

2023-10-25 Thread via cfe-commits
philnik777 wrote: Yes, it should be the `ranges_robust_against_*` tests in both `test/libcxx` and `test/std`. https://github.com/llvm/llvm-project/pull/68494 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[clang-tools-extra] [libc++] Implement ranges::iota (PR #68494)

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

[clang-tools-extra] [libc++] Implement ranges::iota (PR #68494)

2023-10-24 Thread James E T Smith via cfe-commits
https://github.com/jamesETsmith edited https://github.com/llvm/llvm-project/pull/68494 ___ 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::iota (PR #68494)

2023-10-24 Thread James E T Smith via cfe-commits
https://github.com/jamesETsmith updated https://github.com/llvm/llvm-project/pull/68494 >From c4a3ccfbad090ad8314aa8ad53092edc8d5432bc Mon Sep 17 00:00:00 2001 From: James Smith Date: Thu, 28 Sep 2023 10:11:15 -0400 Subject: [PATCH 1/7] [libc++] Implement ranges::iota and

[clang-tools-extra] [libc++] Implement ranges::iota (PR #68494)

2023-10-24 Thread James E T Smith via cfe-commits
https://github.com/jamesETsmith edited https://github.com/llvm/llvm-project/pull/68494 ___ 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::iota (PR #68494)

2023-10-24 Thread James E T Smith via cfe-commits
@@ -0,0 +1,54 @@ +// -*- C++ -*- +//===--===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +//

[clang-tools-extra] [libc++] Implement ranges::iota (PR #68494)

2023-10-24 Thread James E T Smith via cfe-commits
https://github.com/jamesETsmith edited https://github.com/llvm/llvm-project/pull/68494 ___ 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::iota (PR #68494)

2023-10-10 Thread James E T Smith via cfe-commits
jamesETsmith wrote: Thanks for taking a look @philnik777! I'll try to address your comments in the next couple of days and let you know if I have any questions. https://github.com/llvm/llvm-project/pull/68494 ___ cfe-commits mailing list

[clang-tools-extra] [libc++] Implement ranges::iota (PR #68494)

2023-10-09 Thread James E T Smith via cfe-commits
https://github.com/jamesETsmith edited https://github.com/llvm/llvm-project/pull/68494 ___ 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::iota (PR #68494)

2023-10-07 Thread via cfe-commits
@@ -0,0 +1,124 @@ +//===--===// +// philnik777 wrote: Unrelated: Please update the `robust_against_*` tests. https://github.com/llvm/llvm-project/pull/68494

[clang-tools-extra] [libc++] Implement ranges::iota (PR #68494)

2023-10-07 Thread via cfe-commits
@@ -46,7 +46,7 @@ "`P2255R2 `__","LWG","A type trait to detect reference binding to temporary","February 2022","","" "`P2273R3 `__","LWG","Making ``std::unique_ptr`` constexpr","February 2022","|Complete|","16.0"

[clang-tools-extra] [libc++] Implement ranges::iota (PR #68494)

2023-10-07 Thread via cfe-commits
https://github.com/philnik777 edited https://github.com/llvm/llvm-project/pull/68494 ___ 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::iota (PR #68494)

2023-10-07 Thread via cfe-commits
@@ -0,0 +1,124 @@ +//===--===// +// +// 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::iota (PR #68494)

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

[clang-tools-extra] [libc++] Implement ranges::iota (PR #68494)

2023-10-07 Thread via cfe-commits
@@ -0,0 +1,124 @@ +//===--===// philnik777 wrote: I've started working on this in https://reviews.llvm.org/D121436 (and didn't really work on it because nobody knew what it was for). You should

[clang-tools-extra] [libc++] Implement ranges::iota (PR #68494)

2023-10-07 Thread via cfe-commits
https://github.com/philnik777 requested changes to this pull request. I haven't looked at the tests yet. The implementation itself looks mostly good. https://github.com/llvm/llvm-project/pull/68494 ___ cfe-commits mailing list

[clang-tools-extra] [libc++] Implement ranges::iota (PR #68494)

2023-10-07 Thread James E T Smith via cfe-commits
https://github.com/jamesETsmith created https://github.com/llvm/llvm-project/pull/68494 # Overview As a disclaimer, this is my first PR to LLVM and while I've tried to ensure I've followed the LLVM and libc++ contributing guidelines, there's probably a good chance I missed something. If I