[PATCH] D114425: [clang] Add __builtin_bswap128

2023-09-21 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik abandoned this revision. philnik added a comment. I don't plan to work on this any time soon, so I'll abandon it to clean up the review queue. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D114425/new/ https://reviews.llvm.org/D114425

[PATCH] D157572: [clang] Add `[[clang::library_extension]]` attribute

2023-09-17 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik abandoned this revision. philnik added a comment. Abandoning, since it seems like we want to extend `diagnose_if` instead. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D157572/new/ https://reviews.llvm.org/D157572 _

[PATCH] D155475: [Clang][Sema] Add -Wctad-selects-copy to diagnose copy deduction candidate

2023-09-14 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik added inline comments. Comment at: clang/lib/Sema/SemaInit.cpp:10932 +DiagnoseCTADCopy(); + } else if (!PP.getSourceManager().isInSystemHeader(Template->getLocation())) { +DiagnoseCTADCopy(); cor3ntin wrote: > So the idea here is that the standa

[PATCH] D157572: [clang] Add `[[clang::library_extension]]` attribute

2023-08-25 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik added a comment. In D157572#4617504 , @aaron.ballman wrote: > In D157572#4614561 , @cjdb wrote: > >> In D157572#4613622 , >> @aaron.ballman wrote: >> >>> In D157

[PATCH] D157572: [clang] Add `[[clang::library_extension]]` attribute

2023-08-23 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik added a comment. In D157572#4606513 , @aaron.ballman wrote: > In D157572#4604595 , @philnik wrote: > >> In D157572#4604482 , >> @aaron.ballman wrote: >> Thi

[PATCH] D157572: [clang] Add `[[clang::library_extension]]` attribute

2023-08-21 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik added a comment. In D157572#4604482 , @aaron.ballman wrote: >> This allows standard libraries to mark symbols as extensions, so the >> compiler can generate extension warnings when they are used. > > Huh, so this is basically the opposite of the

[PATCH] D155064: [clang][SemaCXX] Diagnose tautological uses of consteval if and is_constant_evaluated

2023-08-19 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik added inline comments. Comment at: libcxx/include/__type_traits/is_constant_evaluated.h:31 + return false; +#endif } Mordante wrote: > hazohelet wrote: > > Mordante wrote: > > > Why is this needed? Does this mean the builtin will fail in C++03 mode? > >

[PATCH] D157757: [Headers] Replace __need_STDDEF_H_misc with specific __need_ macros

2023-08-16 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik added a comment. I think these changes would allow us to drop the `stddef.h` compat header from libc++, which would be really nice. Comment at: clang/lib/Headers/stddef.h:36-40 +#if (defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202311L) || \ +(def

[PATCH] D157572: [clang] Add `[[clang::library_extension]]` attribute

2023-08-10 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik added inline comments. Comment at: clang/include/clang/Basic/DiagnosticSemaKinds.td:5690-5691 +def warn_unknown_ext : Warning<"Unknown extension kind: %0">; +def warn_cxx11_ext : Warning<"%0 is a C++11 extension">, +InGroup; +def warn_cxx14_ext : Warning<"%0 is a C++1

[PATCH] D157572: [clang] Add `[[clang::library_extension]]` attribute

2023-08-09 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik created this revision. philnik added reviewers: aaron.ballman, erichkeane. Herald added a subscriber: arphaman. Herald added a project: All. philnik requested review of this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. This allows standard libraries to m

[PATCH] D157324: [clang] Move the Clang CI jobs off of the libc++ builders

2023-08-08 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik accepted this revision. philnik added a comment. This revision is now accepted and ready to land. Thanks for working on this! I think it would make a lot of sense to unify this build and the Debian build, since currently we are building Clang twice without a good reason. Repository:

[PATCH] D155809: [NFC] [Clang] Fix strict weak ordering in ItaniumVTableBuilder

2023-08-01 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik added a comment. @aaron.ballman I think what @danlark means is that when building clang against a libc++ which has debug assertions enabled, the clang tests he mentioned result in an assertion firing within libc++. i.e. the libc++ debug mode catches the non-strict weak ordering that it

[PATCH] D156247: [Clang] Add a warning on uses of coroutine keywords

2023-07-27 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik added a comment. In D156247#4538626 , @aaron.ballman wrote: > I would like explicit buy-in from the libc++ folks on the idea of adding > `-fno-coroutines` as they're going to be impacted by Clang supporting such an > option (and they may have a

[PATCH] D152003: [clang] Fix `static_cast` to array of unknown bound

2023-07-25 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik added a comment. In D152003#4531732 , @aaron.ballman wrote: > In D152003#4531404 , @Fznamznon > wrote: > >>> should we try to land that today? >> >> I'm not sure. It causes failures in libc++ testing: >>

[PATCH] D154893: [Clang] Fix some triviality computations

2023-07-23 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik added inline comments. Comment at: clang/include/clang/AST/DeclCXX.h:1269 /// Determine whether this class has a non-trivial copy constructor /// (C++ [class.copy]p6, C++11 [class.copy]p12) bool hasNonTrivialCopyConstructor() const { royjacobson

[PATCH] D151683: [clang] Enable C++11-style attributes in all language modes

2023-07-22 Thread Nikolas Klauser via Phabricator via cfe-commits
This revision was landed with ongoing or failed builds. This revision was automatically updated to reflect the committed changes. Closed by commit rG874217f99b99: [clang] Enable C++11-style attributes in all language modes (authored by philnik). Repository: rG LLVM Github Monorepo CHANGES SINC

[PATCH] D151683: [clang] Enable C++11-style attributes in all language modes

2023-07-20 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik updated this revision to Diff 542743. philnik added a comment. - Address comments - Try to fix CI - Rebased Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D151683/new/ https://reviews.llvm.org/D151683 Files: clang/docs/LanguageExtensions.r

[PATCH] D151683: [clang] Enable C++11-style attributes in all language modes

2023-07-17 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik added a comment. In D151683#4508209 , @MaskRay wrote: > Reverse ping @philnik :) > > The `release/17.x` branch will be created soon > (https://discourse.llvm.org/t/llvm-17-0-0-release-planning-and-update/71762). I know. I just didn't have the ti

[PATCH] D155064: [clang][SemaCXX] Diagnose tautological uses of consteval if and is_constant_evaluated

2023-07-16 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik added inline comments. Comment at: libcxx/test/std/algorithms/alg.modifying.operations/alg.copy/ranges.copy.segmented.pass.cpp:96 int main(int, char**) { - if (!std::is_constant_evaluated()) { -test_containers, std::deque>(); cor3ntin wrote: > this

[PATCH] D155064: [clang][SemaCXX] Diagnose tautological uses of consteval if and is_constant_evaluated

2023-07-12 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik added inline comments. Comment at: libcxx/test/std/utilities/meta/meta.const.eval/is_constant_evaluated.verify.cpp:27 static_assert(!std::is_constant_evaluated(), ""); - // expected-warning@-1 0-1 {{'std::is_constant_evaluated' will always evaluate to 'true' in a ma

[PATCH] D155078: [ci] Make libc++ and Clang CI scripts independent

2023-07-12 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik accepted this revision. philnik added a comment. This revision is now accepted and ready to land. I like this a lot! LGTM. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D155078/new/ https://reviews.llvm.org/D155078 _

[PATCH] D153920: [clang] Move the clang formatting job to run-buildbot to fix the CI

2023-07-11 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik updated this revision to Diff 539183. philnik added a comment. Herald added a reviewer: NoQ. Try to fix CI Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D153920/new/ https://reviews.llvm.org/D153920 Files: clang/lib/Analysis/FlowSensitive

[PATCH] D153920: [clang] Move the clang formatting job to run-buildbot to fix the CI

2023-07-10 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik updated this revision to Diff 538798. philnik added a comment. Try to fix CI Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D153920/new/ https://reviews.llvm.org/D153920 Files: clang/utils/ci/buildkite-pipeline.yml clang/utils/ci/run-bui

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

2023-07-10 Thread Nikolas Klauser via Phabricator via cfe-commits
This revision was landed with ongoing or failed builds. This revision was automatically updated to reflect the committed changes. philnik marked an inline comment as done. Closed by commit rGc6b4433a0f20: [clang] Fix __is_trivially_equality_comparable for classes which contain arrays… (authored by

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

2023-07-08 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik created this revision. philnik added reviewers: aaron.ballman, cor3ntin, erichkeane. Herald added a project: All. philnik requested review of this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. Fixes #63656 Repository: rG LLVM Github Monorepo https://

[PATCH] D122874: [clang] Add GNU spelling for no_unqiue_address attribute

2023-07-07 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik abandoned this revision. philnik added a comment. I'm dropping this in favour of D151683 . Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D122874/new/ https://reviews.llvm.org/D122874 ___

[PATCH] D153920: [clang] Move the clang formatting job to run-buildbot to fix the CI

2023-07-07 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik updated this revision to Diff 538290. philnik marked 7 inline comments as done. philnik added a comment. Address comments Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D153920/new/ https://reviews.llvm.org/D153920 Files: clang/utils/ci/bu

[PATCH] D153920: [clang] Move the clang formatting job to run-buildbot to fix the CI

2023-07-07 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik added subscribers: cor3ntin, erichkeane, aaron.ballman. philnik added a comment. @aaron.ballman @erichkeane @cor3ntin (anybody else?) are you fine with moving the clang build kite-pipeline to `clang/utils/ci` and adding a `run-buildbot`? Repository: rG LLVM Github Monorepo CHANGES SI

[PATCH] D153920: [clang] Move the clang formatting job to run-buildbot to fix the CI

2023-07-07 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik updated this revision to Diff 538208. philnik marked 2 inline comments as done. philnik added a comment. Herald added a project: clang. Herald added a subscriber: cfe-commits. Address comments Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D15

[PATCH] D153536: [Clang] Implement P2169 A nice placeholder with no name

2023-07-05 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik added a comment. Would it be possible to make `__` also a placeholder, so standard libraries can use this before C++26? Or is `_` already a reserved identifier? (I don't think so) Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D153536/new/

[PATCH] D151683: [clang] Enable C++11-style attributes in all language modes

2023-07-02 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik updated this revision to Diff 536623. philnik edited the summary of this revision. philnik added a comment. Try to fix CI Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D151683/new/ https://reviews.llvm.org/D151683 Files: clang/docs/Langua

[PATCH] D151683: [clang] Enable C++11-style attributes in all language modes

2023-07-02 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik updated this revision to Diff 536620. philnik marked 16 inline comments as done. philnik added a comment. Address comments Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D151683/new/ https://reviews.llvm.org/D151683 Files: clang/docs/Langu

[PATCH] D153890: [clang] Fix checking the equality comparator of base classes in __is_trivially_equality_comparable

2023-06-28 Thread Nikolas Klauser via Phabricator via cfe-commits
This revision was landed with ongoing or failed builds. This revision was automatically updated to reflect the committed changes. Closed by commit rG3cf8b982042e: [clang] Fix checking the equality comparator of base classes in… (authored by philnik). Repository: rG LLVM Github Monorepo CHANGES

[PATCH] D153890: [clang] Fix checking the equality comparator of base classes in __is_trivially_equality_comparable

2023-06-27 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik created this revision. philnik added reviewers: aaron.ballman, cor3ntin. Herald added a project: All. philnik requested review of this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. Fixes #63192 Repository: rG LLVM Github Monorepo https://reviews.llvm

[PATCH] D153737: [clang] __is_trivially_equality_comparable should return false for arrays

2023-06-26 Thread Nikolas Klauser via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rG4de66e8c4434: [clang] __is_trivially_equality_comparable should return false for arrays (authored by philnik). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D

[PATCH] D151963: [clang][NFC] Remove trailing whitespaces and enforce it in lib, include and docs

2023-06-26 Thread Nikolas Klauser via Phabricator via cfe-commits
This revision was landed with ongoing or failed builds. This revision was automatically updated to reflect the committed changes. Closed by commit rGf6d557ee34b6: [clang][NFC] Remove trailing whitespaces and enforce it in lib, include and docs (authored by philnik). Changed prior to commit: htt

[PATCH] D153737: [clang] __is_trivially_equality_comparable should return false for arrays

2023-06-25 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik created this revision. Herald added a project: All. philnik requested review of this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. When comparing two arrays, their pointers are compared instead of their elements, which menas that they are not trivially e

[PATCH] D151625: [clang] Add `clang::equality_operator_compares_members_lexicographically`

2023-06-25 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik added a comment. @aaron.ballman Do you have any opinion here? Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D151625/new/ https://reviews.llvm.org/D151625 ___ cfe-commits mailing list cfe-commits@l

[PATCH] D151683: [clang] Enable C++11-style attributes in all language modes

2023-06-09 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik added inline comments. Comment at: clang/test/Parser/cxx-decl.cpp:316 #if __cplusplus >= 201103L -// expected-error@+3 {{expected}} +// expected-error@+2 {{expected}} // expected-error@-3 {{expected ';' after top level declarator}} aaron.ballman wrote:

[PATCH] D152083: [clang] Warning for uninitialized elements in fixed-size arrays

2023-06-06 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik added inline comments. Comment at: clang/include/clang/Basic/DiagnosticGroups.td:732 def UninitializedConstReference : DiagGroup<"uninitialized-const-reference">; +def UninitializedArrayElements : DiagGroup<"uninitialized-array-elements">; def Uninitialized : DiagGroup

[PATCH] D147717: [C++20][NFC] Claim full support for consteval again

2023-06-05 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik added a comment. https://github.com/llvm/llvm-project/issues/60709 seems also pretty scary to me. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D147717/new/ https://reviews.llvm.org/D147717 ___ cf

[PATCH] D151963: [clang][NFC] Remove trailing whitespaces and enforce it in lib, include and docs

2023-06-01 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik created this revision. philnik added reviewers: erichkeane, aaron.ballman. Herald added subscribers: luke, steakhal, frasercrmck, martong, luismarques, apazos, sameer.abuasal, s.egerton, Jim, jocewei, PkmX, the_o, brucehoult, MartinMosbeck, rogfer01, edward-jones, zzheng, jrtc27, niosHD,

[PATCH] D151625: [clang] Add `clang::equality_operator_compares_members_lexicographically`

2023-06-01 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik updated this revision to Diff 527704. philnik marked 2 inline comments as done. philnik added a comment. Herald added a subscriber: jdoerfert. - Address comments - Try to fix CI Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D151625/new/ http

[PATCH] D151683: [clang] Enable C++11-style attributes in all language modes

2023-05-30 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik added a comment. In D151683#4380877 , @erichkeane wrote: > What is the justification for this? What exactly are you asking for? Why I'd like to back port it? This would make quite a bit of code in libc++ simpler and avoids pit-falls where an at

[PATCH] D151625: [clang] Add `clang::equality_operator_compares_members_lexicographically`

2023-05-30 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik added a comment. In D151625#4380735 , @erichkeane wrote: > I'm a little dense today perhaps, but I don't get the use case for this? Can > you ELI-EWG? Is this an attribute we expect our users to use? The name is > horrifyingly long for users

[PATCH] D151623: [clang] Extend __is_trivially_equality_comparable to check for hidden friends

2023-05-30 Thread Nikolas Klauser via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rG0e4c4c777308: [clang] Extend __is_trivially_equality_comparable to check for hidden friends (authored by philnik). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.

[PATCH] D151623: [clang] Extend __is_trivially_equality_comparable to check for hidden friends

2023-05-30 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik added a comment. In D151623#4380760 , @erichkeane wrote: > Is this a builtin that is supposed to model something in the standard? It > isn't clear to me how this one is supposed to work. No, this is for optimization purposes. It is true when i

[PATCH] D151683: [clang] Enable C++11-style attributes in all language modes

2023-05-29 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik added inline comments. Herald added subscribers: Michael137, JDevlieghere. Comment at: clang/test/ParserHLSL/group_shared.hlsl:14 -// expected-error@+1 {{expected expression}} float groupshared [[]] i = 12; Should this also get an extension warning/sho

[PATCH] D151683: [clang] Enable C++11-style attributes in all language modes

2023-05-29 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik created this revision. philnik added reviewers: aaron.ballman, erichkeane. Herald added subscribers: wlei, wenlei, jdoerfert, dmgreen. Herald added a project: All. philnik requested review of this revision. Herald added subscribers: lldb-commits, cfe-commits, jplehr, sstefan1, MaskRay. Hera

[PATCH] D151625: [clang] Add `clang::equality_operator_compares_members_lexicographically`

2023-05-27 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik added a comment. If anybody has a better name for this I'm all ears. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D151625/new/ https://reviews.llvm.org/D151625 ___ cfe-commits mailing list cfe-co

[PATCH] D151625: [clang] Add `clang::equality_operator_compares_members_lexicographically`

2023-05-27 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik created this revision. philnik added reviewers: aaron.ballman, erichkeane. Herald added a subscriber: dschuff. Herald added a project: All. philnik requested review of this revision. Herald added subscribers: cfe-commits, aheejin. Herald added a project: clang. This attribute is equivalent

[PATCH] D151623: [clang] Extend __is_trivially_equality_comparable to check for hidden friends

2023-05-27 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik created this revision. philnik added reviewers: aaron.ballman, erichkeane. Herald added a project: All. philnik requested review of this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. This allows types to be considered trivially equality comparable if a de

[PATCH] D150321: [clang] Document extensions from later standards

2023-05-11 Thread Nikolas Klauser via Phabricator via cfe-commits
This revision was landed with ongoing or failed builds. This revision was automatically updated to reflect the committed changes. philnik marked an inline comment as done. Closed by commit rGb09fad7f8e9c: [clang] Document extensions from later standards (authored by philnik). Changed prior to com

[PATCH] D150321: [clang] Document extensions from later standards

2023-05-11 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik updated this revision to Diff 521375. philnik marked 5 inline comments as done. philnik added a comment. Address comments Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D150321/new/ https://reviews.llvm.org/D150321 Files: clang/docs/Langua

[PATCH] D150321: [clang] Document extensions from later standards

2023-05-11 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik added inline comments. Comment at: clang/docs/LanguageExtensions.rst:1386 +Relaxed constexpr __cpp_constexpr C++14 C++11 +Designated initializers __cpp_designated_initializersC++20 C++03 +Attributes on e

[PATCH] D150321: [clang] Document extensions from later standards

2023-05-10 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik created this revision. philnik added a reviewer: aaron.ballman. Herald added a project: All. philnik requested review of this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. Repository: rG LLVM Github Monorepo https://reviews.llvm.org/D150321 Files: c

[PATCH] D150072: [clang] Fix __is_trivially_equality_comparable for non-trivially-copyable types

2023-05-08 Thread Nikolas Klauser via Phabricator via cfe-commits
This revision was landed with ongoing or failed builds. This revision was automatically updated to reflect the committed changes. Closed by commit rG465d48748131: [clang] Fix __is_trivially_equality_comparable for non-trivially-copyable types (authored by philnik). Repository: rG LLVM Github Mo

[PATCH] D150072: [clang] Fix __is_trivially_equality_comparable for non-trivially-copyable types

2023-05-07 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik created this revision. philnik added a reviewer: aaron.ballman. Herald added a project: All. philnik requested review of this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. Repository: rG LLVM Github Monorepo https://reviews.llvm.org/D150072 Files: c

[PATCH] D149573: [Clang][C++23] Implement core language changes from P1467R9 extended floating-point types and standard names and introduce Bfloat16 arithmetic type.

2023-05-01 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik removed a reviewer: libc++abi. philnik added a comment. In D149573#433 , @codemzs wrote: > In D149573#4310601 , @philnik wrote: > >> In D149573#4310009 , @code

[PATCH] D149573: [Clang][C++23] Implement core language changes from P1467R9 extended floating-point types and standard names and introduce Bfloat16 arithmetic type.

2023-05-01 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik added a comment. In D149573#4310009 , @codemzs wrote: > My change to libcxxabi/test/test_demangle.pass.cpp (last file in the change) > is only one line i.e {"_ZNK5clang4Type16isArithmeticTypeERNS_10ASTContextE", > "clang::Type::isArithmeticType(

[PATCH] D149553: [clang] Use -std=c++23 instead of -std=c++2b

2023-04-30 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik added inline comments. Comment at: libcxx/test/tools/clang_tidy_checks/uglify_attributes.cpp:46 - if (lang_opts.CPlusPlus2b) { attributes.emplace_back("assume"); You probably want to `#ifdef` this based on Clang 16/17. Repository: rG LLVM Gith

[PATCH] D147844: Emit warning when implicit cast from int to bool happens in an conditional operator expression

2023-04-21 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik added a comment. I have to say I'm not really convinced this change is a good idea. The cases it flags don't really seem in any way ambiguous/erroneous. In D147844#4286364 , @chaitanyav wrote: > @aaron.ballman please take a look. > > I filed a

[PATCH] D147175: [clang] Add __is_trivially_equality_comparable

2023-04-17 Thread Nikolas Klauser via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rGe98776a180a7: [clang] Add __is_trivially_equality_comparable (authored by philnik). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D147175/new/ https://review

[PATCH] D147175: [clang] Add __is_trivially_equality_comparable

2023-04-16 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik added a comment. ping @aaron.ballman Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D147175/new/ https://reviews.llvm.org/D147175 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lis

[PATCH] D141775: [Clang] Export CanPassInRegisters as a type trait

2023-04-14 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik added a comment. In D141775#4256381 , @royjacobson wrote: > In D141775#4255923 , @philnik wrote: > >> Is this essentially "is_trivial_for_the_purposes_of_abi"? > > I'd say so. Are you asking for a potenti

[PATCH] D147175: [clang] Add __is_trivially_equality_comparable

2023-04-10 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik added inline comments. Comment at: libcxx/include/__type_traits/is_equality_comparable.h:46 template -struct __is_trivially_equality_comparable +struct __libcpp_is_trivially_equality_comparable : integral_constant philnik wrote: > > Mordante wrote: > > > This does

[PATCH] D147175: [clang] Add __is_trivially_equality_comparable

2023-04-10 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik updated this revision to Diff 512201. philnik marked 3 inline comments as done. philnik added a comment. - Moved libc++ changes into it's own PR - Rebased - Fixed `enum` false-positive Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D147175/new

[PATCH] D141775: [Clang] Export CanPassInRegisters as a type trait

2023-04-10 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik added a comment. Is this essentially "is_trivial_for_the_purposes_of_abi"? Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D141775/new/ https://reviews.llvm.org/D141775 ___ cfe-commits mailing list

[PATCH] D147175: [clang] Add __is_trivially_equality_comparable

2023-04-08 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik marked an inline comment as done. philnik added inline comments. Comment at: libcxx/include/__type_traits/is_equality_comparable.h:46 template -struct __is_trivially_equality_comparable +struct __libcpp_is_trivially_equality_comparable : integral_constant This does

[PATCH] D147175: [clang] Add __is_trivially_equality_comparable

2023-04-07 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik added a comment. In D147175#4251076 , @aaron.ballman wrote: > One thing I can't quite determine is whether we expect to call this type > trait often or not. Are either of the uses in libc++ going to be instantiated > frequently? I'm trying to f

[PATCH] D147175: [clang] Add __is_trivially_equality_comparable

2023-04-07 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik updated this revision to Diff 511762. philnik marked 2 inline comments as done. philnik added a comment. Address comments Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D147175/new/ https://reviews.llvm.org/D147175 Files: clang/docs/Langua

[PATCH] D147175: [clang] Add __is_trivially_equality_comparable

2023-04-06 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik added a comment. In D147175#4246513 , @aaron.ballman wrote: > Ah, I like this approach -- it keeps things roughly in sync with checking for > unique object representations, which is great. I spotted a few questions, but > in general this is hea

[PATCH] D147175: [clang] Add __is_trivially_equality_comparable

2023-04-06 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik updated this revision to Diff 511460. philnik marked 4 inline comments as done. philnik added a comment. Address comments Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D147175/new/ https://reviews.llvm.org/D147175 Files: clang/docs/Langua

[PATCH] D147175: [clang] Add __is_trivially_equality_comparable

2023-04-04 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik updated this revision to Diff 510887. philnik added a comment. Remove formatting changes Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D147175/new/ https://reviews.llvm.org/D147175 Files: clang/docs/LanguageExtensions.rst clang/include/

[PATCH] D147175: [clang] Add __is_trivially_equality_comparable

2023-04-04 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik updated this revision to Diff 510865. philnik marked 5 inline comments as done. philnik added a comment. Address comments Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D147175/new/ https://reviews.llvm.org/D147175 Files: clang/docs/Langua

[PATCH] D147175: [clang] Add __is_trivially_equality_comparable

2023-04-04 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik added a comment. In D147175#4240572 , @aaron.ballman wrote: > Hmmm, is this effectively `std::has_unique_object_representations` (ensuring > that all bits of the object representation contribute to the value)? These two traits are indeed very s

[PATCH] D147175: [clang] Add __is_trivially_equality_comparable

2023-03-30 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik updated this revision to Diff 509598. philnik added a comment. Herald added a project: libc++. Herald added a subscriber: libcxx-commits. Herald added a reviewer: libc++. Try to fix CI Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D147175/new

[PATCH] D147175: [clang] Add __is_trivially_equality_comparable

2023-03-29 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik created this revision. philnik added a reviewer: aaron.ballman. Herald added a project: All. philnik requested review of this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. This patch adds a new trait to allow standard libraries to forward `std::equal` ca

[PATCH] D129951: adds `__disable_adl` attribute

2023-03-08 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik added a comment. In D129951#4178844 , @cjdb wrote: > In D129951#4178154 , @philnik wrote: > >> I don't think libc++ can adopt this without having to essentially duplicate >> our code, since GCC doesn't su

[PATCH] D129951: adds `__disable_adl` attribute

2023-03-08 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik added a comment. I don't think libc++ can adopt this without having to essentially duplicate our code, since GCC doesn't support `__disable_adl` (and AFAICT there is no coordination between GCC and Clang to add it to both). Have you tested what impact making the members `static` has? Bo

[PATCH] D143524: Make the -Wunused-template default.

2023-02-23 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik added a comment. In D143524#4148344 , @v.g.vassilev wrote: > In D143524#4148271 , @philnik wrote: > >> It looks like this warning is incompatible with `-Wctad-maybe-unsupported`. >> It warns that the ded

[PATCH] D143524: Make the -Wunused-template default.

2023-02-23 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik added a comment. It looks like this warning is incompatible with `-Wctad-maybe-unsupported`. It warns that the deduction guide is unused, but the deduction guide is required suppress `-Wctad-maybe-unsupported`. https://godbolt.org/z/G8bMjYsbn Repository: rC Clang CHANGES SINCE LAST

[PATCH] D143524: Make the -Wunused-template default.

2023-02-23 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik added a comment. In D143524#4148024 , @v.g.vassilev wrote: > In D143524#4148006 , @philnik wrote: > >> The emitted warnings from the libc++ CI look like a false-positive to me. >> While the functions are

[PATCH] D143524: Make the -Wunused-template default.

2023-02-23 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik added a comment. The emitted warnings from the libc++ CI look like a false-positive to me. While the functions are never called, they are used in an unevaluated context. I would expect `-Wunused` warnings to only be emitted when I can just remove the code without problems, which doesn't

[PATCH] D144334: [Clang] Add C++2b attribute [[assume(expression)]]

2023-02-21 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik added inline comments. Comment at: clang/include/clang/Basic/Attr.td:1448 +def Assume : StmtAttr { + let Spellings = [CXX11<"", "assume", 202302>]; + let Documentation = [AssumeDocs]; tahonermann wrote: > philnik wrote: > > Izaron wrote: > > > Honestly

[PATCH] D144334: [Clang] Add C++2b attribute [[assume(expression)]]

2023-02-18 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik added inline comments. Comment at: clang/include/clang/Basic/Attr.td:1448 +def Assume : StmtAttr { + let Spellings = [CXX11<"", "assume", 202302>]; + let Documentation = [AssumeDocs]; Izaron wrote: > Honestly I don't have a clue what these numbers `2023

[PATCH] D144192: GH60642: Fix ICE when checking a lambda defined in a concept definition

2023-02-17 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik added a comment. In D144192#4134902 , @erichkeane wrote: > In D144192#4134900 , @philnik wrote: > >> In D144192#4134894 , @erichkeane >> wrote: >> >>> In D144192

[PATCH] D144192: GH60642: Fix ICE when checking a lambda defined in a concept definition

2023-02-17 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik added a comment. In D144192#4134894 , @erichkeane wrote: > In D144192#4134893 , @philnik wrote: > >> In D144192#4134887 , @erichkeane >> wrote: >> >>> Looks like

[PATCH] D144192: GH60642: Fix ICE when checking a lambda defined in a concept definition

2023-02-17 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik added a comment. In D144192#4134887 , @erichkeane wrote: > Looks like I have ot abandon this now? Anyway, fix was committed, but I > forgot the differential-revision line. You can also Close the revision instead of abandoning it to make it obv

[PATCH] D143670: Stop claiming we support [[carries_dependency]]

2023-02-09 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik added a comment. In D143670#4116118 , @cor3ntin wrote: > Thanks for doing this Aaron. > Did you look in libc++ if they used it anywhere? (I assume they don't) I'm not aware of any uses, and I would be quite surprised if it was used anywhere give

[PATCH] D141954: Forbid implicit conversion of constraint expression to bool

2023-01-18 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik added a comment. In D141954#4061962 , @erichkeane wrote: > Speaking of: I guess the libcxx failure is NOT caused by me? > https://reviews.llvm.org/D141992 > > I see this on a different review, despite this not being committed. That's not great

[PATCH] D141954: Forbid implicit conversion of constraint expression to bool

2023-01-17 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik added a comment. In D141954#4060246 , @erichkeane wrote: > In D141954#4060244 , @philnik wrote: > >> In D141954#4060212 , @erichkeane >> wrote: >> >>> @ldionne @

[PATCH] D141954: Forbid implicit conversion of constraint expression to bool

2023-01-17 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik added a comment. In D141954#4060212 , @erichkeane wrote: > @ldionne @Mordante The libcxx failure isn't clear what it is complaining > about, but I thought this fix might end up breaking a libcxx test, since it > would be easy to fall into the

[PATCH] D141572: [C++] [Coroutines] Deprecates the '-fcoroutines-ts' flag

2023-01-16 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik accepted this revision. philnik added a comment. This revision is now accepted and ready to land. LGTM from the libc++ side of things % nit. I think @aaron.ballman should take another look at the Clang changes. Comment at: libcxx/utils/generate_header_tests.py:22 +

[PATCH] D133574: [C2x] reject type definitions in offsetof

2023-01-13 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik added a comment. In D133574#4051899 , @aaron.ballman wrote: > In D133574#4051782 , @bkramer wrote: > >> GitHub finds around 1.9k instances of this pattern to compute `alignof`. >> There's a lot of duplic

[PATCH] D141572: [C++] [Coroutines] Deprecates the '-fcoroutines-ts' flag

2023-01-13 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik added a comment. In D141572#4050492 , @ChuanqiXu wrote: > @philnik when I run `ninja libcxx-generate-files` locally, it says `ninja: > error: unknown target 'libcxx-generate-files'`. The following off is my > configuring command: > > cmake -G

[PATCH] D141572: [C++] [Coroutines] Deprecates the '-fcoroutines-ts' flag

2023-01-12 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik added a comment. In D141572#4047428 , @aaron.ballman wrote: > Thank you for working on this! I think the Debian CI failure is unrelated, > but the libc++ one looks plausibly related: > > > /home/libcxx-builder/.buildkite-agent/builds/e6f11fd2

[PATCH] D136953: [C++20] Diagnose invalid and reserved module names

2022-11-01 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik added inline comments. Comment at: clang/lib/Sema/SemaModule.cpp:282 + StringRef FirstComponentName = Path[0].first->getName(); + if (!getSourceManager().isInSystemHeader(Path[0].second) && + (FirstComponentName == "std" || aaron.ballman wrote: > p

[PATCH] D136953: [C++20] Diagnose invalid and reserved module names

2022-11-01 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik added inline comments. Comment at: clang/lib/Sema/SemaModule.cpp:282 + StringRef FirstComponentName = Path[0].first->getName(); + if (!getSourceManager().isInSystemHeader(Path[0].second) && + (FirstComponentName == "std" || aaron.ballman wrote: > p

[PATCH] D136953: [C++20] Diagnose invalid and reserved module names

2022-11-01 Thread Nikolas Klauser via Phabricator via cfe-commits
philnik added inline comments. Comment at: clang/lib/Sema/SemaModule.cpp:282 + StringRef FirstComponentName = Path[0].first->getName(); + if (!getSourceManager().isInSystemHeader(Path[0].second) && + (FirstComponentName == "std" || aaron.ballman wrote: > p

  1   2   >