[clang] 3ba8548 - [libc++][ranges] Implement ranges::transform

2022-04-05 Thread Nikolas Klauser via cfe-commits
Author: Nikolas Klauser Date: 2022-04-05T11:06:28+02:00 New Revision: 3ba8548c8e04bb301c4243887362c54bfbd4af8b URL: https://github.com/llvm/llvm-project/commit/3ba8548c8e04bb301c4243887362c54bfbd4af8b DIFF:

[libunwind] a7aade1 - [runtimes] Synchronize warnings flags between libc++/libc++abi/libunwind

2023-03-16 Thread Nikolas Klauser via cfe-commits
Author: Nikolas Klauser Date: 2023-03-17T00:40:59+01:00 New Revision: a7aade1f36eb60161235b66bca46db12e5326a0c URL: https://github.com/llvm/llvm-project/commit/a7aade1f36eb60161235b66bca46db12e5326a0c DIFF:

[libunwind] 141471a - [runtimes] Remove unused functions from Handle{Libcxx,Libunwind}Flags.cmake

2023-02-21 Thread Nikolas Klauser via cfe-commits
Author: Nikolas Klauser Date: 2023-02-22T00:38:44+01:00 New Revision: 141471a0cbf2d029899b29baf1a54a238f6067f9 URL: https://github.com/llvm/llvm-project/commit/141471a0cbf2d029899b29baf1a54a238f6067f9 DIFF:

[clang] e98776a - [clang] Add __is_trivially_equality_comparable

2023-04-17 Thread Nikolas Klauser via cfe-commits
Author: Nikolas Klauser Date: 2023-04-17T15:36:21+02:00 New Revision: e98776a180a74c08dcc07cebf26c11deac6e975a URL: https://github.com/llvm/llvm-project/commit/e98776a180a74c08dcc07cebf26c11deac6e975a DIFF:

[clang] 7a59e2c - [clang][NFC] Remove trailing whitespace from riscv_vector.td

2023-07-14 Thread Nikolas Klauser via cfe-commits
Author: Nikolas Klauser Date: 2023-07-14T12:38:29-07:00 New Revision: 7a59e2c59187fc76e39b0e4d5bfd13a0a5144c44 URL: https://github.com/llvm/llvm-project/commit/7a59e2c59187fc76e39b0e4d5bfd13a0a5144c44 DIFF:

[clang] c6b4433 - [clang] Fix __is_trivially_equality_comparable for classes which contain arrays of non-trivially equality comparable types

2023-07-10 Thread Nikolas Klauser via cfe-commits
Author: Nikolas Klauser Date: 2023-07-10T11:09:38-07:00 New Revision: c6b4433a0f20c5ebbd72cee8fd0dcfdb429e619c URL: https://github.com/llvm/llvm-project/commit/c6b4433a0f20c5ebbd72cee8fd0dcfdb429e619c DIFF:

[clang] 0e4c4c7 - [clang] Extend __is_trivially_equality_comparable to check for hidden friends

2023-05-30 Thread Nikolas Klauser via cfe-commits
Author: Nikolas Klauser Date: 2023-05-30T08:33:31-07:00 New Revision: 0e4c4c77730810db235d377d49ba5860dfa0bd8d URL: https://github.com/llvm/llvm-project/commit/0e4c4c77730810db235d377d49ba5860dfa0bd8d DIFF:

[clang] 874217f - [clang] Enable C++11-style attributes in all language modes

2023-07-22 Thread Nikolas Klauser via cfe-commits
Author: Nikolas Klauser Date: 2023-07-22T09:34:15-07:00 New Revision: 874217f99b99ab3c9026dc3b7bd84cd2beebde6e URL: https://github.com/llvm/llvm-project/commit/874217f99b99ab3c9026dc3b7bd84cd2beebde6e DIFF:

[libunwind] 3537338 - [libc++][libunwind] Fixes to allow GCC 13 to compile libunwind/libc++abi/libc++

2023-08-04 Thread Nikolas Klauser via cfe-commits
Author: Nikolas Klauser Date: 2023-08-04T00:51:43-07:00 New Revision: 3537338d1ab9b6da4b58499877953deb81c59e5e URL: https://github.com/llvm/llvm-project/commit/3537338d1ab9b6da4b58499877953deb81c59e5e DIFF:

[clang] 3cf8b98 - [clang] Fix checking the equality comparator of base classes in __is_trivially_equality_comparable

2023-06-28 Thread Nikolas Klauser via cfe-commits
Author: Nikolas Klauser Date: 2023-06-28T13:34:02-07:00 New Revision: 3cf8b982042e91d9aabb880ccc7a556256187ff9 URL: https://github.com/llvm/llvm-project/commit/3cf8b982042e91d9aabb880ccc7a556256187ff9 DIFF:

[clang] 4de66e8 - [clang] __is_trivially_equality_comparable should return false for arrays

2023-06-26 Thread Nikolas Klauser via cfe-commits
Author: Nikolas Klauser Date: 2023-06-26T09:36:58-07:00 New Revision: 4de66e8c44348fb1e85268b10a7f862381e695c7 URL: https://github.com/llvm/llvm-project/commit/4de66e8c44348fb1e85268b10a7f862381e695c7 DIFF:

[clang] f6d557e - [clang][NFC] Remove trailing whitespaces and enforce it in lib, include and docs

2023-06-26 Thread Nikolas Klauser via cfe-commits
Author: Nikolas Klauser Date: 2023-06-26T09:34:36-07:00 New Revision: f6d557ee34b6bbdb1dc32f29e34b4a4a8ad35e81 URL: https://github.com/llvm/llvm-project/commit/f6d557ee34b6bbdb1dc32f29e34b4a4a8ad35e81 DIFF:

[clang] b09fad7 - [clang] Document extensions from later standards

2023-05-11 Thread Nikolas Klauser via cfe-commits
Author: Nikolas Klauser Date: 2023-05-11T11:54:46-07:00 New Revision: b09fad7f8e9ce5b88fb467be012ea379efa3659d URL: https://github.com/llvm/llvm-project/commit/b09fad7f8e9ce5b88fb467be012ea379efa3659d DIFF:

[clang] 465d487 - [clang] Fix __is_trivially_equality_comparable for non-trivially-copyable types

2023-05-08 Thread Nikolas Klauser via cfe-commits
Author: Nikolas Klauser Date: 2023-05-08T12:07:28-07:00 New Revision: 465d487481313492e13435f3f03874b923b86ce3 URL: https://github.com/llvm/llvm-project/commit/465d487481313492e13435f3f03874b923b86ce3 DIFF:

[clang] [llvm] [clang-tools-extra] [clang] Refactor Builtins.def to be a tablegen file (PR #68324)

2024-01-24 Thread Nikolas Klauser via cfe-commits
https://github.com/philnik777 closed https://github.com/llvm/llvm-project/pull/68324 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[llvm] [clang] [clang-tools-extra] [clang] Refactor Builtins.def to be a tablegen file (PR #68324)

2024-01-24 Thread Nikolas Klauser via cfe-commits
philnik777 wrote: @mikaelholmen Thanks. I've fixed the signature in e099e7b. https://github.com/llvm/llvm-project/pull/68324 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] e099e7b - [Clang] Fix the signature of __builtin___stpncpy_chk

2024-01-24 Thread Nikolas Klauser via cfe-commits
Author: Nikolas Klauser Date: 2024-01-24T19:25:01+01:00 New Revision: e099e7b278c774338c7019e38fbbca9ef2c8dd74 URL: https://github.com/llvm/llvm-project/commit/e099e7b278c774338c7019e38fbbca9ef2c8dd74 DIFF:

[clang] [clang] Merge some delarations which currently have different attributes (PR #79349)

2024-01-24 Thread Nikolas Klauser via cfe-commits
https://github.com/philnik777 created https://github.com/llvm/llvm-project/pull/79349 None >From f65bd5f45cf24369a56a4cf4c556c57791d0bf3b Mon Sep 17 00:00:00 2001 From: Nikolas Klauser Date: Wed, 11 Oct 2023 13:02:30 +0200 Subject: [PATCH] [clang] Merge some delarations which currently have

[clang] [libcxx] [Clang] Add __is_invocable_r and __is_nothrow_invocable_r (PR #81213)

2024-02-08 Thread Nikolas Klauser via cfe-commits
https://github.com/philnik777 updated https://github.com/llvm/llvm-project/pull/81213 >From f2394044b0397cbe3bd15f96f43fbf0e50def206 Mon Sep 17 00:00:00 2001 From: Nikolas Klauser Date: Mon, 11 Sep 2023 04:31:02 +0200 Subject: [PATCH] [Clang] Add __is_invocable_r and __is_nothrow_invocable_r

[clang] [libcxx] [Clang] Add __is_invocable_r and __is_nothrow_invocable_r (PR #81213)

2024-02-08 Thread Nikolas Klauser via cfe-commits
https://github.com/philnik777 updated https://github.com/llvm/llvm-project/pull/81213 >From 8657d0de76373665c55b774b9cdffe9707288efc Mon Sep 17 00:00:00 2001 From: Nikolas Klauser Date: Mon, 11 Sep 2023 04:31:02 +0200 Subject: [PATCH] [Clang] Add __is_invocable_r and __is_nothrow_invocable_r

[clang] [libcxx] [Clang] Add __is_invocable_r and __is_nothrow_invocable_r (PR #81213)

2024-02-08 Thread Nikolas Klauser via cfe-commits
https://github.com/philnik777 created https://github.com/llvm/llvm-project/pull/81213 This patch also uses the new builtins in libc++. >From 6c74eb263dd889858f3f7be328d85fe354f71835 Mon Sep 17 00:00:00 2001 From: Nikolas Klauser Date: Mon, 11 Sep 2023 04:31:02 +0200 Subject: [PATCH] [Clang]

[clang] [libcxx] [clang][Sema] Add checks for validity of default ctor's class (PR #78898)

2024-02-09 Thread Nikolas Klauser via cfe-commits
https://github.com/philnik777 approved this pull request. The libc++ changes LGTM. https://github.com/llvm/llvm-project/pull/78898 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang] Fix crash when declaring invalid lambda member (PR #74110)

2024-02-15 Thread Nikolas Klauser via cfe-commits
philnik777 wrote: Ping (@AaronBallman maybe?) https://github.com/llvm/llvm-project/pull/74110 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang] Fix behavior of `__is_trivially_relocatable(volatile int)` (PR #77092)

2024-02-12 Thread Nikolas Klauser via cfe-commits
philnik777 wrote: This isn't ABI breaking for us currently (at least in a non-benign way). We only use it to optimize `vector` growing currently, and just define it to `is_trivially_copyable` if `__is_trivially_relocatable` isn't available. https://github.com/llvm/llvm-project/pull/77092

[clang] [libcxx] [Clang] Add __is_invocable_r and __is_nothrow_invocable_r (PR #81213)

2024-02-12 Thread Nikolas Klauser via cfe-commits
https://github.com/philnik777 converted_to_draft https://github.com/llvm/llvm-project/pull/81213 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [libcxx] [Clang] Add __is_invocable_r and __is_nothrow_invocable_r (PR #81213)

2024-02-09 Thread Nikolas Klauser via cfe-commits
https://github.com/philnik777 updated https://github.com/llvm/llvm-project/pull/81213 >From b0b0072067c650e0eb1f4a556301cbc5b873935d Mon Sep 17 00:00:00 2001 From: Nikolas Klauser Date: Mon, 11 Sep 2023 04:31:02 +0200 Subject: [PATCH] [Clang] Add __is_invocable_r and __is_nothrow_invocable_r

[clang] [libcxx] [Clang] Add __is_invocable_r and __is_nothrow_invocable_r (PR #81213)

2024-02-09 Thread Nikolas Klauser via cfe-commits
https://github.com/philnik777 updated https://github.com/llvm/llvm-project/pull/81213 >From a6ef9191b3a68e68e7dd225bfb1e802f7542ccd9 Mon Sep 17 00:00:00 2001 From: Nikolas Klauser Date: Mon, 11 Sep 2023 04:31:02 +0200 Subject: [PATCH] [Clang] Add __is_invocable_r and __is_nothrow_invocable_r

[clang] [WIP][libc++] Add builtin to clear padding bytes (prework for P0528R3) (PR #75371)

2023-12-13 Thread Nikolas Klauser via cfe-commits
philnik777 wrote: I don't think this should be tagged as libc++, since it doesn't actually touch anything of libc++. https://github.com/llvm/llvm-project/pull/75371 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[openmp] [lldb] [mlir] [clang] [flang] [libcxx] [libc] [compiler-rt] [llvm] [clang-tools-extra] [libc++][span] P2821R5: span.at() (PR #74994)

2023-12-18 Thread Nikolas Klauser via cfe-commits
@@ -0,0 +1,136 @@ +//===--===// +// +// 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] [compiler-rt] [clang-tools-extra] [lldb] [mlir] [llvm] [lld] [clang] [libc++][ranges] Implement ranges::contains_subrange (PR #66963)

2023-12-18 Thread Nikolas Klauser via cfe-commits
@@ -0,0 +1,145 @@ +//===--===// +// +// 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] [mlir] [lld] [lldb] [compiler-rt] [llvm] [clang] [clang-tools-extra] [libc++][ranges] Implement ranges::contains_subrange (PR #66963)

2023-12-18 Thread Nikolas Klauser via cfe-commits
@@ -0,0 +1,145 @@ +//===--===// +// +// 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][docs] Update extension documentation (PR #75150)

2023-12-12 Thread Nikolas Klauser via cfe-commits
philnik777 wrote: I'm landing this, since this shouldn't be in any way controversial. https://github.com/llvm/llvm-project/pull/75150 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [Clang][docs] Update extension documentation (PR #75150)

2023-12-12 Thread Nikolas Klauser via cfe-commits
https://github.com/philnik777 closed https://github.com/llvm/llvm-project/pull/75150 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[llvm] [clang-tools-extra] [libcxx] [clang] [libc++][span] P2821R5: span.at() (PR #74994)

2023-12-10 Thread Nikolas Klauser via cfe-commits
@@ -0,0 +1,136 @@ +//===--===// +// +// 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] [llvm] [clang-tools-extra] [libc++][span] P2821R5: span.at() (PR #74994)

2023-12-10 Thread Nikolas Klauser via cfe-commits
@@ -343,6 +347,15 @@ public: return __data_[__idx]; } +# if _LIBCPP_STD_VER >= 26 +_LIBCPP_HIDE_FROM_ABI constexpr reference at(size_type __idx) const { + if (__idx >= size()) { +__throw_out_of_range(); + } + return *(data() + __idx);

[llvm] [libcxx] [clang] [clang-tools-extra] [libc++][span] P2821R5: span.at() (PR #74994)

2023-12-10 Thread Nikolas Klauser via cfe-commits
@@ -0,0 +1,136 @@ +//===--===// +// +// 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] [clang] [llvm] [libcxx] [libc++][span] P2821R5: span.at() (PR #74994)

2023-12-10 Thread Nikolas Klauser via cfe-commits
@@ -343,6 +347,15 @@ public: return __data_[__idx]; } +# if _LIBCPP_STD_VER >= 26 +_LIBCPP_HIDE_FROM_ABI constexpr reference at(size_type __idx) const { + if (__idx >= size()) { +__throw_out_of_range(); + } + return *(data() + __idx);

[clang] [clang-tools-extra] [libcxx] [llvm] [libc++][span] P2821R5: span.at() (PR #74994)

2023-12-10 Thread Nikolas Klauser via cfe-commits
https://github.com/philnik777 edited https://github.com/llvm/llvm-project/pull/74994 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang-tools-extra] [libcxx] [clang] [llvm] [libc++][span] P2821R5: span.at() (PR #74994)

2023-12-10 Thread Nikolas Klauser via cfe-commits
@@ -41,7 +41,6 @@ void testRuntimeSpan(Span sp, std::size_t idx) assert(r1 == r2); } -struct A{}; philnik777 wrote: Unrelated change? https://github.com/llvm/llvm-project/pull/74994 ___ cfe-commits mailing

[clang-tools-extra] [clang] [llvm] [libcxx] [libc++][span] P2821R5: span.at() (PR #74994)

2023-12-10 Thread Nikolas Klauser via cfe-commits
@@ -0,0 +1,136 @@ +//===--===// +// +// 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] [libc++][span] P2821R5: span.at() (PR #74994)

2023-12-10 Thread Nikolas Klauser via cfe-commits
https://github.com/philnik777 requested changes to this pull request. Looks mostly good, but I have a few small comments. https://github.com/llvm/llvm-project/pull/74994 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[llvm] [clang-tools-extra] [libcxx] [clang] [libc++][span] P2821R5: span.at() (PR #74994)

2023-12-10 Thread Nikolas Klauser via cfe-commits
@@ -0,0 +1,136 @@ +//===--===// +// +// 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] [clang-tools-extra] [compiler-rt] [libcxxabi] [openmp] [libcxx] [clang] [mlir] [libc] [llvm] [clang] Avoid -Wshadow warning when init-capture named same as class field (PR #74512)

2023-12-11 Thread Nikolas Klauser via cfe-commits
philnik777 wrote: I seem to be the only one, but I don't understand how this isn't shadowing. The whole point of the shadowing warning is to avoid confusion about which variable is actually used, which IMO could very well be the case here. I think it would be much better to get a new flag to

[clang] [clang-tools-extra] [clang] Extend diagnose_if to accept more detailed warning information (PR #70976)

2023-12-09 Thread Nikolas Klauser via cfe-commits
https://github.com/philnik777 updated https://github.com/llvm/llvm-project/pull/70976 >From a91f499900d4cea4804833d004b6c4e54a7d8b15 Mon Sep 17 00:00:00 2001 From: Nikolas Klauser Date: Sun, 3 Sep 2023 17:26:28 -0700 Subject: [PATCH] [clang] Extend diagnose_if to accept more detailed warning

[clang] [clang-tools-extra] [clang] Extend diagnose_if to accept more detailed warning information (PR #70976)

2023-12-09 Thread Nikolas Klauser via cfe-commits
@@ -171,13 +172,61 @@ class DiagnosticMapping { class DiagnosticIDs : public RefCountedBase { public: /// The level of the diagnostic, after it has been through mapping. - enum Level { + enum Level : uint8_t { Ignored, Note, Remark, Warning, Error, Fatal }; + //

[clang] [clang] Add `clang::behaves_like_std(...)` attribute (PR #76596)

2023-12-31 Thread Nikolas Klauser via cfe-commits
philnik777 wrote: > @philnik777 Do `std::move`/ `std::forward` etc actually need an abi tag? > Maybe we should simply not set a tag given that clang / gcc replace call to > these functions. If that were always the case we could simply provide a declaration without ever defining the function,

[clang] [clang] Add `clang::behaves_like_std(...)` attribute (PR #76596)

2023-12-30 Thread Nikolas Klauser via cfe-commits
https://github.com/philnik777 commented: While I disagree with the reasoning for not just using `std` (@MaxEW707 I think having a chat about this informally would be nice.), I do think it makes sense to add the ability to declare some functions as builtins. There are a few cases inside the

[clang] [clang] Add `clang::behaves_like_std(...)` attribute (PR #76596)

2023-12-30 Thread Nikolas Klauser via cfe-commits
https://github.com/philnik777 edited https://github.com/llvm/llvm-project/pull/76596 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang] Add `clang::behaves_like_std(...)` attribute (PR #76596)

2023-12-30 Thread Nikolas Klauser via cfe-commits
@@ -0,0 +1,20 @@ +// RUN: %clang_cc1 -fsyntax-only -std=c++11 -verify %s + +namespace mystd { +inline namespace bar { +template struct remove_reference { typedef T type; }; +template struct remove_reference { typedef T type; }; +template struct remove_reference { typedef T

[clang] [Clang][docs] Update extension documentation (PR #75150)

2023-12-12 Thread Nikolas Klauser via cfe-commits
https://github.com/philnik777 created https://github.com/llvm/llvm-project/pull/75150 This is back-ported to C++03 now, since clang accepts C++11 attributes in C++03. https://godbolt.org/z/f7xG18bdE >From fbc41ef81ff8d4b647f45dfbeca20d4428ce0c98 Mon Sep 17 00:00:00 2001 From: Nikolas Klauser

[clang] [Clang] Allow the use of consecutive brackets as an extension in C++03 (PR #75148)

2023-12-12 Thread Nikolas Klauser via cfe-commits
https://github.com/philnik777 created https://github.com/llvm/llvm-project/pull/75148 None >From be2654702d4e7bc3b8689662db6011a3e148ef4d Mon Sep 17 00:00:00 2001 From: Nikolas Klauser Date: Tue, 12 Dec 2023 08:47:26 +0100 Subject: [PATCH] [Clang] Allow the use of consecutive brackets as an

[clang] [Clang] Allow the use of consecutive brackets as an extension in C++03 (PR #75148)

2023-12-12 Thread Nikolas Klauser via cfe-commits
https://github.com/philnik777 edited https://github.com/llvm/llvm-project/pull/75148 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[compiler-rt] [clang] [libcxx] [lldb] [mlir] [llvm] [libc] [openmp] [flang] [clang-tools-extra] [libc++][span] P2821R5: `span.at()` (PR #74994)

2024-01-01 Thread Nikolas Klauser via cfe-commits
https://github.com/philnik777 approved this pull request. Other than the test this LGTM. https://github.com/llvm/llvm-project/pull/74994 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[llvm] [compiler-rt] [libcxx] [libc] [openmp] [lldb] [mlir] [clang] [flang] [clang-tools-extra] [libc++][span] P2821R5: `span.at()` (PR #74994)

2024-01-01 Thread Nikolas Klauser via cfe-commits
@@ -0,0 +1,136 @@ +//===--===// +// +// 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] [lldb] [flang] [libcxx] [openmp] [llvm] [compiler-rt] [clang-tools-extra] [mlir] [libc] [libc++][span] P2821R5: `span.at()` (PR #74994)

2024-01-01 Thread Nikolas Klauser via cfe-commits
https://github.com/philnik777 edited https://github.com/llvm/llvm-project/pull/74994 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[llvm] [clang-tools-extra] [lld] [libcxx] [clang] [flang] [compiler-rt] [libc++][ranges] P2116R9: Implements `views::enumerate` (PR #73617)

2024-01-03 Thread Nikolas Klauser via cfe-commits
@@ -0,0 +1,333 @@ +// -*- C++ -*- +//===--===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +//

[compiler-rt] [clang] [libc] [llvm] [libcxx] [clang-tools-extra] [lldb] [flang] [libunwind] [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:

[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:

[clang-tools-extra] [libcxx] [libunwind] [lldb] [clang] [compiler-rt] [libc] [flang] [llvm] [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:

[clang] [clang-tools-extra] [libunwind] [lldb] [libc] [compiler-rt] [libcxx] [flang] [llvm] [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:

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

2024-01-05 Thread Nikolas Klauser via cfe-commits
@@ -13,7 +13,7 @@ // Range algorithms should return `std::ranges::dangling` when given a dangling range. philnik777 wrote: The formatting changes in here are nice, but would be better handled in a separate PR, just to make it clear what actually changed.

[lldb] [libunwind] [libcxx] [llvm] [libc] [compiler-rt] [clang-tools-extra] [flang] [clang] [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:

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

2024-01-05 Thread Nikolas Klauser 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"

[libcxx] [lld] [compiler-rt] [llvm] [flang] [clang-tools-extra] [clang] [libc++][ranges] P2116R9: Implements `views::enumerate` (PR #73617)

2024-01-03 Thread Nikolas Klauser via cfe-commits
@@ -0,0 +1,333 @@ +// -*- 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] [flang] [lld] [compiler-rt] [llvm] [clang-tools-extra] [libcxx] [libc++][ranges] P2116R9: Implements `views::enumerate` (PR #73617)

2024-01-03 Thread Nikolas Klauser via cfe-commits
@@ -0,0 +1,333 @@ +// -*- 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] [llvm] [libcxx] "Reapply "[Sema] Fix crash on invalid code with parenthesized aggrega… (PR #76833)

2024-01-06 Thread Nikolas Klauser via cfe-commits
philnik777 wrote: @mordante The lines could be changed to `// expected-error-re@*:* 0-1 (excess elements in struct initializer|no matching constructor for initialization of)}}{{.*` to still have coverage. FWIW the `{{.*}}` at the end seems to be redundant too.

[clang] [Clang][C++26] Implement Pack Indexing (P2662R3). (PR #72644)

2024-01-10 Thread Nikolas Klauser via cfe-commits
@@ -978,6 +978,20 @@ bool Parser::ConsumeAndStoreFunctionPrologue(CachedTokens ) { } else { break; } + // Pack indexing + if (getLangOpts().CPlusPlus26 && Tok.is(tok::ellipsis) && philnik777 wrote: > @philnik777 This would

[clang] [Clang][C++26] Implement Pack Indexing (P2662R3). (PR #72644)

2024-01-10 Thread Nikolas Klauser via cfe-commits
@@ -978,6 +978,20 @@ bool Parser::ConsumeAndStoreFunctionPrologue(CachedTokens ) { } else { break; } + // Pack indexing + if (getLangOpts().CPlusPlus26 && Tok.is(tok::ellipsis) && philnik777 wrote: FWIW it would be really sweet

[clang] [clang][NFC] Refactor Builtins.def to be a tablegen file (PR #68324)

2024-01-06 Thread Nikolas Klauser via cfe-commits
@@ -0,0 +1,333 @@ +//=- ClangDiagnosticsEmitter.cpp - Generate Clang diagnostics tables -*- C++ -*- +// +// 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] [mlir] [libcxxabi] [compiler-rt] [clang] [flang] [llvm] [libc] [libcxx] [openmp] [clang] Avoid -Wshadow warning when init-capture named same as class field (PR #74512)

2024-01-11 Thread Nikolas Klauser via cfe-commits
philnik777 wrote: > @philnik777 I agree strongly with @Fznamznon. If `this` is not captured there > is no actual shadowing in that they do not occupy encompassing scope, and so > removing one declaration would not give you access to the other variable. I don't disagree that this is

[clang] [clang] Add `clang::behaves_like_std(...)` attribute (PR #76596)

2024-01-13 Thread Nikolas Klauser via cfe-commits
philnik777 wrote: It's not ready, but I have a draft for a much more general attribute: #78071 https://github.com/llvm/llvm-project/pull/76596 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[clang] [clang] Add add attribute [[clang::builtin]] (PR #78071)

2024-01-13 Thread Nikolas Klauser via cfe-commits
https://github.com/philnik777 created https://github.com/llvm/llvm-project/pull/78071 None >From f073a827ddbe728ced53a82431f517da58753776 Mon Sep 17 00:00:00 2001 From: Nikolas Klauser Date: Mon, 11 Dec 2023 12:51:07 +0100 Subject: [PATCH] [clang] Add add attribute [[clang::builtin]] ---

[clang] [clang] Add attribute [[clang::builtin]] (PR #78071)

2024-01-13 Thread Nikolas Klauser via cfe-commits
https://github.com/philnik777 edited https://github.com/llvm/llvm-project/pull/78071 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [libcxx] [mlir] [llvm] [lld] [compiler-rt] [clang-tools-extra] [flang] [lldb] [libc++][numeric] P0543R3: Saturation arithmetic (PR #77967)

2024-01-14 Thread Nikolas Klauser via cfe-commits
@@ -0,0 +1,119 @@ +// -*- C++ -*- +//===--===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +//

[mlir] [clang-tools-extra] [lld] [clang] [libcxx] [flang] [compiler-rt] [llvm] [lldb] [libc++][numeric] P0543R3: Saturation arithmetic (PR #77967)

2024-01-14 Thread Nikolas Klauser via cfe-commits
@@ -0,0 +1,119 @@ +// -*- C++ -*- +//===--===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +//

[lldb] [clang-tools-extra] [lld] [compiler-rt] [mlir] [llvm] [flang] [clang] [libcxx] [libc++][numeric] P0543R3: Saturation arithmetic (PR #77967)

2024-01-14 Thread Nikolas Klauser via cfe-commits
@@ -0,0 +1,119 @@ +// -*- C++ -*- +//===--===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +//

[flang] [clang-tools-extra] [lld] [clang] [libcxx] [lldb] [compiler-rt] [mlir] [llvm] [libc++][numeric] P0543R3: Saturation arithmetic (PR #77967)

2024-01-14 Thread Nikolas Klauser via cfe-commits
@@ -0,0 +1,130 @@ +//===--===// +// +// 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] Refactor Builtins.def to be a tablegen file (PR #68324)

2024-01-17 Thread Nikolas Klauser via cfe-commits
https://github.com/philnik777 edited https://github.com/llvm/llvm-project/pull/68324 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[llvm] [clang] [clang-tools-extra] [clang] Refactor Builtins.def to be a tablegen file (PR #68324)

2024-01-17 Thread Nikolas Klauser via cfe-commits
@@ -6571,11 +6571,14 @@ class AtomicExpr : public Expr { /// \return empty atomic scope model if the atomic op code does not have /// scope operand. static std::unique_ptr getScopeModel(AtomicOp Op) { -if (Op >= AO__opencl_atomic_load && Op <=

[llvm] [libcxx] [clang] [clang-tools-extra] [lldb] [libc] [libcxxabi] [libc++] Fix the behavior of throwing `operator new` under -fno-exceptions (PR #69498)

2024-01-18 Thread Nikolas Klauser via cfe-commits
https://github.com/philnik777 commented: LGTM % nit. https://github.com/llvm/llvm-project/pull/69498 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang-tools-extra] [lldb] [libcxx] [llvm] [libcxxabi] [clang] [libc] [libc++] Fix the behavior of throwing `operator new` under -fno-exceptions (PR #69498)

2024-01-18 Thread Nikolas Klauser via cfe-commits
https://github.com/philnik777 edited https://github.com/llvm/llvm-project/pull/69498 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[libcxxabi] [clang] [lldb] [libc] [clang-tools-extra] [llvm] [libcxx] [libc++] Fix the behavior of throwing `operator new` under -fno-exceptions (PR #69498)

2024-01-18 Thread Nikolas Klauser via cfe-commits
@@ -7,6 +7,8 @@ //===--===// #include <__memory/aligned_alloc.h> +#include <__overridable_function> philnik777 wrote: We already have `#include "include/refstring.h" // from libc++` inside

[llvm] [libcxx] [clang] [clang-tools-extra] [lldb] [libc] [libcxxabi] [libc++] Fix the behavior of throwing `operator new` under -fno-exceptions (PR #69498)

2024-01-18 Thread Nikolas Klauser via cfe-commits
https://github.com/philnik777 approved this pull request. https://github.com/llvm/llvm-project/pull/69498 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang] Fix crash when declaring invalid lambda member (PR #74110)

2024-01-18 Thread Nikolas Klauser via cfe-commits
philnik777 wrote: gentle ping https://github.com/llvm/llvm-project/pull/74110 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang] Accept lambdas in C++03 as an extensions (PR #73376)

2024-01-18 Thread Nikolas Klauser via cfe-commits
philnik777 wrote: gentle ping https://github.com/llvm/llvm-project/pull/73376 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang-tools-extra] [llvm] [clang] Refactor Builtins.def to be a tablegen file (PR #68324)

2024-01-18 Thread Nikolas Klauser via cfe-commits
@@ -6571,11 +6571,14 @@ class AtomicExpr : public Expr { /// \return empty atomic scope model if the atomic op code does not have /// scope operand. static std::unique_ptr getScopeModel(AtomicOp Op) { -if (Op >= AO__opencl_atomic_load && Op <=

[lld] [mlir] [clang] [libcxx] [openmp] [llvm] [libc++] Deprecate the _LIBCPP_ENABLE_CXX20_REMOVED_ALLOCATOR_MEMBERS macro (PR #77692)

2024-01-12 Thread Nikolas Klauser via cfe-commits
philnik777 wrote: > My suggestion on #69994 had been to stop implying > `_LIBCPP_ENABLE_CXX20_REMOVED_ALLOCATOR_MEMBERS` from > `_LIBCPP_ENABLE_CXX20_REMOVED_FEATURES` in LLVM 18 at the same time as > deprecating it. Did you intend to _not_ do that, or was it just missed? We've also

[clang] [Clang][Builtin] add __builtin_exit (PR #74803)

2023-12-21 Thread Nikolas Klauser via cfe-commits
philnik777 wrote: I'm not really convinced that `__builtin_exit` is widely used. If you filter for C/C++ and exclude GCC there aren't many matches: https://sourcegraph.com/search?q=context:global+__builtin_exit+count:all+-file:gcc/.*+%28lang:C+OR+lang:C%2B%2B%29=standard=0=repo

[clang] [clang-tools-extra] [clang] Extend diagnose_if to accept more detailed warning information (PR #70976)

2023-11-28 Thread Nikolas Klauser via cfe-commits
philnik777 wrote: gentle ping~ https://github.com/llvm/llvm-project/pull/70976 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

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

2023-11-28 Thread Nikolas Klauser via cfe-commits
https://github.com/philnik777 reopened 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

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

2023-11-28 Thread Nikolas Klauser via cfe-commits
https://github.com/philnik777 updated https://github.com/llvm/llvm-project/pull/65148 >From 02e9afd761228f401df4d9f8dfaaca44ffae0c6e Mon Sep 17 00:00:00 2001 From: zijunzhao Date: Thu, 31 Aug 2023 20:08:32 + Subject: [PATCH 01/17] [libc++] Implement ranges::contains Differential Revision:

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

2023-11-28 Thread Nikolas Klauser via cfe-commits
https://github.com/philnik777 closed https://github.com/llvm/llvm-project/pull/70258 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

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

2023-11-28 Thread Nikolas Klauser via cfe-commits
philnik777 wrote: I've reopened the old one for you. Let's keep the discussion in one place. https://github.com/llvm/llvm-project/pull/70258 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[clang] Move documentation about -verify from a header to public docs (PR #73694)

2023-11-28 Thread Nikolas Klauser via cfe-commits
philnik777 wrote: Would it make sense to document this more publicly? While it's designed to be an internal tool, it's really useful for people who want to make sure their library produces high quality diagnostics (e.g. `nodiscard`, `static_assert`s etc.). I'm sure you are aware that libc++

[clang] [clang] Accept lambdas in C++03 as an extensions (PR #73376)

2023-11-27 Thread Nikolas Klauser via cfe-commits
philnik777 wrote: > Was there an RFC asking the community about exposing lambdas in pre C++11 > modes? This is a sufficiently large language extension that we probably > should verify if we haven't already. I believe this is a conforming extension > (I can't think of a circumstance under

[clang] [clang] Fix crash when declaring invalid lambda member (PR #74110)

2023-12-02 Thread Nikolas Klauser via cfe-commits
philnik777 wrote: > The tests changes look mostly unrelated to this PR They mostly are. I found this while trying to check C++03 with the test and noticed that C++11 also crashes, so I updated the test to also run in C++11. https://github.com/llvm/llvm-project/pull/74110

[clang] [clang] Accept lambdas in C++03 as an extensions (PR #73376)

2023-12-02 Thread Nikolas Klauser via cfe-commits
@@ -92,14 +94,14 @@ namespace ImplicitCapture { [] { return ref_i; }; // expected-error {{variable 'ref_i' cannot be implicitly captured in a lambda with no capture-default specified}} expected-note {{lambda expression begins here}} expected-note 2 {{capture 'ref_i' by}}

[clang] [clang] Accept lambdas in C++03 as an extensions (PR #73376)

2023-12-02 Thread Nikolas Klauser via cfe-commits
https://github.com/philnik777 updated https://github.com/llvm/llvm-project/pull/73376 >From 563f86bddc0ec59b63c6aeffee2342f027c09119 Mon Sep 17 00:00:00 2001 From: Nikolas Klauser Date: Fri, 1 Dec 2023 18:16:36 +0100 Subject: [PATCH 1/2] [clang] Fix crash when declaring invalid lambda member

[clang] [clang] Fix crash when declaring invalid lambda member (PR #74110)

2023-12-02 Thread Nikolas Klauser via cfe-commits
https://github.com/philnik777 edited https://github.com/llvm/llvm-project/pull/74110 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang] Accept lambdas in C++03 as an extensions (PR #73376)

2023-12-02 Thread Nikolas Klauser via cfe-commits
@@ -92,14 +94,14 @@ namespace ImplicitCapture { [] { return ref_i; }; // expected-error {{variable 'ref_i' cannot be implicitly captured in a lambda with no capture-default specified}} expected-note {{lambda expression begins here}} expected-note 2 {{capture 'ref_i' by}}

  1   2   3   >