[clang] [clang] WIP: Warn on mismatched RequiresCapability attributes (PR #67520)

2023-09-27 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr created https://github.com/llvm/llvm-project/pull/67520 There's a problem with this attribute where the declaration in a header file doesn't have the attribute, but the definition in the source file has. As a result, the attribute doesn't take effect when just the

[clang] [clang][Diagnostics] Highlight code snippets (PR #66514)

2023-09-27 Thread Timm Baeder via cfe-commits
Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= Message-ID: In-Reply-To: https://github.com/tbaederr updated https://github.com/llvm/llvm-project/pull/66514 >From

[clang] [clang][Interp] Three-way comparisons (PR #65901)

2023-09-26 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr updated https://github.com/llvm/llvm-project/pull/65901 >From 5dc457a45bdf8366a5f8e5d7df7bcf3383120ecd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Sun, 10 Sep 2023 17:02:22 +0200 Subject: [PATCH] [clang][Interp] Three-way comparisons ---

[clang] [clang] Avoid evaluating the BitWidth expression over and over again (PR #66203)

2023-09-26 Thread Timm Baeder via cfe-commits
tbaederr wrote: Ping https://github.com/llvm/llvm-project/pull/66203 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][Interp] Emit dummy values for unknown C variables (PR #66749)

2023-09-26 Thread Timm Baeder via cfe-commits
tbaederr wrote: Ping https://github.com/llvm/llvm-project/pull/66749 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][Interp] Three-way comparisons (PR #65901)

2023-09-26 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr resolved https://github.com/llvm/llvm-project/pull/65901 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][Interp] Three-way comparisons (PR #65901)

2023-09-26 Thread Timm Baeder via cfe-commits
@@ -253,6 +253,29 @@ bool ByteCodeExprGen::VisitBinaryOperator(const BinaryOperator *BO) { return this->delegate(RHS); } + // Special case for C++'s three-way/spaceship operator <=>, which + // returns a std::strong_ordering (which is class, so doesn't have a

[clang] [clang][Interp] Three-way comparisons (PR #65901)

2023-09-26 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr updated https://github.com/llvm/llvm-project/pull/65901 >From 0c61a3cd0d02e70bc1cedf048e73af50caf65bd5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Sun, 10 Sep 2023 17:02:22 +0200 Subject: [PATCH] [clang][Interp] Three-way comparisons ---

[clang] [clang][Interp] Add IntegralAP for arbitrary-precision integers (PR #65844)

2023-09-26 Thread Timm Baeder via cfe-commits
Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= Message-ID: In-Reply-To: https://github.com/tbaederr updated https://github.com/llvm/llvm-project/pull/65844 >From 41ea723998954938a00a0de482ef000f1f3af980 Mon Sep 17 00:00:00 2001 From:

[clang] [clang][Interp] Add IntegralAP for arbitrary-precision integers (PR #65844)

2023-09-26 Thread Timm Baeder via cfe-commits
Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= Message-ID: In-Reply-To: https://github.com/tbaederr resolved https://github.com/llvm/llvm-project/pull/65844 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[clang] [clang][NFC] Preprocessor only needs const LangOptions (PR #66874)

2023-09-26 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr closed https://github.com/llvm/llvm-project/pull/66874 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][Diagnostics] Make 'note' color CYAN (PR #66997)

2023-09-26 Thread Timm Baeder via cfe-commits
tbaederr wrote: I keep forgetting to add release notes and @AaronBallman hasn't reminded me in a while - is this work a release note? https://github.com/llvm/llvm-project/pull/66997 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[clang] [clang][Diagnostics] Make 'note' color CYAN (PR #66997)

2023-09-26 Thread Timm Baeder via cfe-commits
tbaederr wrote: I know, this only fixes the problem in the vast majority of cases. I don't know of any tool implementing dynamic background color checking so it can adjust the foreground color though. This is a one-liner that fixes the problem on terminals with a dark background and the

[clang] [clang][Interp] Add IntegralAP for arbitrary-precision integers (PR #65844)

2023-09-26 Thread Timm Baeder via cfe-commits
Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= Message-ID: In-Reply-To: @@ -0,0 +1,249 @@ +//===--- Integral.h - Wrapper for numeric types for the VM --*- C++ -*-===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM

[clang] [clang][Interp] Add IntegralAP for arbitrary-precision integers (PR #65844)

2023-09-26 Thread Timm Baeder via cfe-commits
Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= Message-ID: In-Reply-To: @@ -0,0 +1,249 @@ +//===--- Integral.h - Wrapper for numeric types for the VM --*- C++ -*-===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM

[clang] [clang][Interp] Add IntegralAP for arbitrary-precision integers (PR #65844)

2023-09-26 Thread Timm Baeder via cfe-commits
Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= Message-ID: In-Reply-To: @@ -1596,6 +1599,9 @@ bool ByteCodeExprGen::visitZeroInitializer(QualType QT, return this->emitZeroSint64(E); case PT_Uint64: return this->emitZeroUint64(E); + case

[clang] [clang][TSA] Make RequiresCapability a DeclOrType attribute (PR #67095)

2023-09-26 Thread Timm Baeder via cfe-commits
Timm =?utf-8?q?Bäder?= Message-ID: In-Reply-To: https://github.com/tbaederr updated https://github.com/llvm/llvm-project/pull/67095 >From 174144b3d2101964a438a22644cbfa4c2314700b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Fri, 22 Sep 2023 08:42:05 +0200 Subject:

[clang] [clang][TSA] Make RequiresCapability a DeclOrType attribute (PR #67095)

2023-09-26 Thread Timm Baeder via cfe-commits
Timm =?utf-8?q?Bäder?= Message-ID: In-Reply-To: https://github.com/tbaederr updated https://github.com/llvm/llvm-project/pull/67095 >From 174144b3d2101964a438a22644cbfa4c2314700b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Fri, 22 Sep 2023 08:42:05 +0200 Subject:

[clang] [clang][Diagnostics] Highlight code snippets (PR #66514)

2023-09-26 Thread Timm Baeder via cfe-commits
Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= Message-ID: In-Reply-To: @@ -0,0 +1,135 @@ + +#include "clang/Frontend/CodeSnippetHighlighter.h" +#include "clang/Basic/DiagnosticOptions.h" +#include

[clang] [clang][Diagnostics] Highlight code snippets (PR #66514)

2023-09-26 Thread Timm Baeder via cfe-commits
Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= Message-ID: In-Reply-To: tbaederr wrote: On a fast machine, the timings with a Release build of clang are: ``` /root/llvm-project/clang/lib/Sema/SemaExpr.cpp:21870:15:

[clang] [clang][Interp] Add IntegralAP for arbitrary-precision integers (PR #65844)

2023-09-25 Thread Timm Baeder via cfe-commits
Timm =?utf-8?q?B=C3=A4der?= , Timm =?utf-8?q?B=C3=A4der?= , Timm =?utf-8?q?B=C3=A4der?= Message-ID: In-Reply-To: tbaederr wrote: Ping https://github.com/llvm/llvm-project/pull/65844 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[clang] [clang][Interp] Three-way comparisons (PR #65901)

2023-09-25 Thread Timm Baeder via cfe-commits
tbaederr wrote: Ping https://github.com/llvm/llvm-project/pull/65901 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][Diagnostics] Highlight code snippets (PR #66514)

2023-09-25 Thread Timm Baeder via cfe-commits
Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= Message-ID: In-Reply-To: tbaederr wrote: > > > I have concerns about Lexing twice every single file for which we display > > > a warning. > > > > > > Sure. Because of

[clang] Diagnose problematic uses of constructor/destructor attribute (PR #67360)

2023-09-25 Thread Timm Baeder via cfe-commits
@@ -2352,26 +2352,61 @@ static void handleUnusedAttr(Sema , Decl *D, const ParsedAttr ) { D->addAttr(::new (S.Context) UnusedAttr(S.Context, AL)); } -static void handleConstructorAttr(Sema , Decl *D, const ParsedAttr ) { - uint32_t priority =

[clang] [clang][Interp] Fix compiling undefined templated functions (PR #67232)

2023-09-25 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr closed https://github.com/llvm/llvm-project/pull/67232 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][Interp] Implement compound assign operators on bitfields (PR #67306)

2023-09-25 Thread Timm Baeder via cfe-commits
Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= Message-ID: In-Reply-To: https://github.com/tbaederr created https://github.com/llvm/llvm-project/pull/67306 None >From 2cd32e94dd4eb194fd70b481f50eeaa2b6f72b66 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Wed, 13 Sep

[clang] [Clang] Fix CXXRewrittenBinaryOperator::getDecomposedForm to handle case when spaceship operator returns comparison category by reference (PR #66270)

2023-09-24 Thread Timm Baeder via cfe-commits
tbaederr wrote: Ping @shafik, just needs a rebase :) https://github.com/llvm/llvm-project/pull/66270 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][Interp] Handle CXXScalarValueInitExprs (PR #67147)

2023-09-24 Thread Timm Baeder via cfe-commits
Timm =?utf-8?q?Bäder?= Message-ID: In-Reply-To: https://github.com/tbaederr resolved https://github.com/llvm/llvm-project/pull/67147 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][Interp] Handle CXXScalarValueInitExprs (PR #67147)

2023-09-24 Thread Timm Baeder via cfe-commits
Timm =?utf-8?q?Bäder?= Message-ID: In-Reply-To: https://github.com/tbaederr resolved https://github.com/llvm/llvm-project/pull/67147 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][Interp] Handle CXXScalarValueInitExprs (PR #67147)

2023-09-24 Thread Timm Baeder via cfe-commits
Timm =?utf-8?q?Bäder?= Message-ID: In-Reply-To: https://github.com/tbaederr updated https://github.com/llvm/llvm-project/pull/67147 >From 9c0cc7fde8473c9b02733720149343c4b2dcddae Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Sat, 23 Sep 2023 11:41:52 +0200 Subject:

[clang] [clang][Interp] Fix compiling undefined templated functions (PR #67232)

2023-09-23 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr created https://github.com/llvm/llvm-project/pull/67232 None >From ed30d89a3c8f0ec5296561e128b2af8b05ade5ca Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Fri, 22 Sep 2023 21:26:51 +0200 Subject: [PATCH] [clang][Interp] Fix compiling undefined

[clang] [clang][Interp] Handle CXXScalarValueInitExprs (PR #67147)

2023-09-23 Thread Timm Baeder via cfe-commits
Timm =?utf-8?q?Bäder?= Message-ID: In-Reply-To: https://github.com/tbaederr updated https://github.com/llvm/llvm-project/pull/67147 >From 9c0cc7fde8473c9b02733720149343c4b2dcddae Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Sat, 23 Sep 2023 11:41:52 +0200 Subject:

[clang] [clang][Interp] Fix returning nullptr from functions (PR #67229)

2023-09-23 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr created https://github.com/llvm/llvm-project/pull/67229 isLive() is false for null pointers, so we need to special-case this here. >From 60a6eade88991e9f80627cb52eb55c1aecbbc1cd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Sat, 23 Sep 2023

[clang] [clang][Interp] Handle CXXScalarValueInitExprs (PR #67147)

2023-09-22 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr resolved https://github.com/llvm/llvm-project/pull/67147 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][Interp] Handle CXXScalarValueInitExprs (PR #67147)

2023-09-22 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr updated https://github.com/llvm/llvm-project/pull/67147 >From aaf450faf7a26bb60de14b81fe7a661adb830273 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Fri, 22 Sep 2023 16:27:11 +0200 Subject: [PATCH] [clang][Interp] Handle CXXScalarValueInitExprs

[clang] [clang][Interp] Handle CXXScalarValueInitExprs (PR #67147)

2023-09-22 Thread Timm Baeder via cfe-commits
@@ -31,6 +31,13 @@ static_assert(b, ""); constexpr int one = true; static_assert(one == 1, ""); +constexpr bool b2 = bool(); +static_assert(!b2, ""); +constexpr int ScalarInitInt = int(); +static_assert(ScalarInitInt == 0, ""); +constexpr float ScalarInitFloat = float();

[clang] [clang][Interp] Handle CXXScalarValueInitExprs (PR #67147)

2023-09-22 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr created https://github.com/llvm/llvm-project/pull/67147 None >From 80013d2e1b70aed0f7e225fab72136b6b4599cea Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Fri, 22 Sep 2023 16:27:11 +0200 Subject: [PATCH] [clang][Interp] Handle

[clang] [clang][Interp] Diagnose uninitialized bases (PR #67131)

2023-09-22 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr created https://github.com/llvm/llvm-project/pull/67131 None >From 0f52eec7bba4ecbd5df75d8a663f1c374771e283 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Fri, 22 Sep 2023 15:09:14 +0200 Subject: [PATCH] [clang][Interp] Diagnose uninitialized

[clang] [clang][Diagnostics] Highlight code snippets (PR #66514)

2023-09-22 Thread Timm Baeder via cfe-commits
Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= Message-ID: In-Reply-To: tbaederr wrote: > I have concerns about Lexing twice every single file for which we display a > warning. Sure. Because of performance, memory

[clang] docs: Fix misplaced apostrophe (PR #67103)

2023-09-22 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr closed https://github.com/llvm/llvm-project/pull/67103 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][TSA] Make RequiresCapability a DeclOrType attribute (PR #67095)

2023-09-22 Thread Timm Baeder via cfe-commits
@@ -136,6 +136,17 @@ int main(void) { // Cleanup happens automatically -> no warning. } + /// Function pointers + { +int __attribute__((requires_capability())) (*function_ptr)(int) = Foo_fun1; tbaederr wrote: This assignment also works if

[clang] [clang][TSA] Make RequiresCapability a DeclOrType attribute (PR #67095)

2023-09-22 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr created https://github.com/llvm/llvm-project/pull/67095 This was much easier than expected actually. I'm sure I'm missing a lot of changes and test coverage though. @aaronpuchert I'm starting a new review here instead of continuing the one in Phab since this is a

[clang] [clang][Diagnostics] Highlight code snippets (PR #66514)

2023-09-21 Thread Timm Baeder via cfe-commits
Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= Message-ID: In-Reply-To: https://github.com/tbaederr updated https://github.com/llvm/llvm-project/pull/66514 >From 4323e6952a577a81a5fdc51ce9571f28d7ccb6f9 Mon Sep 17

[clang] [clang][Diagnostics] Highlight code snippets (PR #66514)

2023-09-21 Thread Timm Baeder via cfe-commits
Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= Message-ID: In-Reply-To: tbaederr wrote: > > One of the remaining tests fails because `PP->getIdentifierInfo()` ends up > > doing external lookup via `ASTReader`, which ends up emitting a

[clang] [clang][Diagnostics] Highlight code snippets (PR #66514)

2023-09-21 Thread Timm Baeder via cfe-commits
Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= Message-ID: In-Reply-To: tbaederr wrote: One of the remaining tests fails because `PP->getIdentifierInfo()` ends up doing external lookup via `ASTReader`, which ends up emitting a diagnostic

[clang] [clang][Diagnostics] Highlight code snippets (PR #66514)

2023-09-21 Thread Timm Baeder via cfe-commits
Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= Message-ID: In-Reply-To: https://github.com/tbaederr updated https://github.com/llvm/llvm-project/pull/66514 >From 4323e6952a577a81a5fdc51ce9571f28d7ccb6f9 Mon Sep 17 00:00:00 2001 From:

[clang] [clang][Diagnostics] Highlight code snippets (PR #66514)

2023-09-21 Thread Timm Baeder via cfe-commits
Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= Message-ID: In-Reply-To: https://github.com/tbaederr updated https://github.com/llvm/llvm-project/pull/66514 >From 4323e6952a577a81a5fdc51ce9571f28d7ccb6f9 Mon Sep 17 00:00:00 2001 From:

[clang] [clang][Diagnostics] Highlight code snippets (PR #66514)

2023-09-21 Thread Timm Baeder via cfe-commits
Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= Message-ID: In-Reply-To: https://github.com/tbaederr updated https://github.com/llvm/llvm-project/pull/66514 >From 4323e6952a577a81a5fdc51ce9571f28d7ccb6f9 Mon Sep 17 00:00:00 2001 From:

[clang] [clang][Diagnostics] Make 'note' color CYAN (PR #66997)

2023-09-21 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr created https://github.com/llvm/llvm-project/pull/66997 Just using BLACK makes it invisible in terminals with a dark background. See this screenshot: ![Screenshot from 2023-09-21

[clang] [clang][Diagnostics] Highlight code snippets (PR #66514)

2023-09-21 Thread Timm Baeder via cfe-commits
Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= Message-ID: In-Reply-To: @@ -1288,11 +1291,33 @@ void TextDiagnostic::emitSnippet(StringRef SourceLine, // Print the source line one character at a time. bool

[clang] [clang][Diagnostics] Highlight code snippets (PR #66514)

2023-09-21 Thread Timm Baeder via cfe-commits
Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= Message-ID: In-Reply-To: https://github.com/tbaederr updated https://github.com/llvm/llvm-project/pull/66514 >From 4323e6952a577a81a5fdc51ce9571f28d7ccb6f9 Mon Sep 17 00:00:00 2001 From:

[clang] [clang][Diagnostics] Highlight code snippets (PR #66514)

2023-09-21 Thread Timm Baeder via cfe-commits
Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= Message-ID: In-Reply-To: tbaederr wrote: The new commit above lexes the entire file and divides multi-line tokens into single-line `StyleRange` objects. _No caching yet_.

[clang] [clang][Diagnostics] Highlight code snippets (PR #66514)

2023-09-21 Thread Timm Baeder via cfe-commits
Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= Message-ID: In-Reply-To: tbaederr wrote: ![Screenshot from 2023-09-21 11-01-56](https://github.com/llvm/llvm-project/assets/49720664/6c09ff87-3c77-4d3f-96bf-a14b1f7cc2d2)

[clang] [clang][Diagnostics] Highlight code snippets (PR #66514)

2023-09-21 Thread Timm Baeder via cfe-commits
Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= Message-ID: In-Reply-To: https://github.com/tbaederr updated https://github.com/llvm/llvm-project/pull/66514 >From 4323e6952a577a81a5fdc51ce9571f28d7ccb6f9 Mon Sep 17 00:00:00 2001 From:

[clang] [clang][Diagnostics] Highlight code snippets (PR #66514)

2023-09-20 Thread Timm Baeder via cfe-commits
Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= Message-ID: In-Reply-To: https://github.com/tbaederr updated https://github.com/llvm/llvm-project/pull/66514 >From 4323e6952a577a81a5fdc51ce9571f28d7ccb6f9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?=

[clang] [clang][Diagnostics] Highlight code snippets (PR #66514)

2023-09-20 Thread Timm Baeder via cfe-commits
Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= Message-ID: In-Reply-To: tbaederr wrote: ![Screenshot from 2023-09-20 19-37-00](https://github.com/llvm/llvm-project/assets/49720664/ea964fca-647c-4a62-82fd-f17f37f96a92) Here's green for comments and cyan for literals ![Screenshot from

[clang] [clang][Diagnostics] Highlight code snippets (PR #66514)

2023-09-20 Thread Timm Baeder via cfe-commits
Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= Message-ID: In-Reply-To: tbaederr wrote: ![Screenshot from 2023-09-20 18-10-28](https://github.com/llvm/llvm-project/assets/49720664/461236ba-1075-4190-a3b8-4230db4cf096) I wanted to dim the comments a little but that's hard when you don't

[clang] [clang][Diagnostics] Highlight code snippets (PR #66514)

2023-09-20 Thread Timm Baeder via cfe-commits
Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= Message-ID: In-Reply-To: tbaederr wrote: All I know about colors in terminals is that it's a huge clusterfuck and we can only rely on a few colors without being incompatible with _some_ terminal types, etc. If you e.g. check

[clang] [clang][Diagnostics] Highlight code snippets (PR #66514)

2023-09-20 Thread Timm Baeder via cfe-commits
Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= Message-ID: In-Reply-To: https://github.com/tbaederr updated https://github.com/llvm/llvm-project/pull/66514 >From 4323e6952a577a81a5fdc51ce9571f28d7ccb6f9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Fri, 15 Sep 2023

[clang] [clang][Diagnostics] Highlight code snippets (PR #66514)

2023-09-20 Thread Timm Baeder via cfe-commits
Timm =?utf-8?q?Bäder?= Message-ID: In-Reply-To: tbaederr wrote: If black is such a bad choice, then why is `noteColor` also black? https://github.com/llvm/llvm-project/blob/2ed813ff269664f2f9e78e9887c205b634226831/clang/lib/Frontend/TextDiagnostic.cpp#L27-L38 Check mate, atheists! As a side

[clang] [clang][Diagnostics] Highlight code snippets (PR #66514)

2023-09-20 Thread Timm Baeder via cfe-commits
Timm =?utf-8?q?Bäder?= Message-ID: In-Reply-To: https://github.com/tbaederr updated https://github.com/llvm/llvm-project/pull/66514 >From 4323e6952a577a81a5fdc51ce9571f28d7ccb6f9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Fri, 15 Sep 2023 15:51:39 +0200 Subject:

[clang] [clang][Diagnostics] Highlight code snippets (PR #66514)

2023-09-20 Thread Timm Baeder via cfe-commits
Timm =?utf-8?q?Bäder?= Message-ID: In-Reply-To: tbaederr wrote: > As for the color of the shed, ideally light/pastel colors so that they don't > overtake the one in the diagnostic messages It's also about readability - notice how two of the three terminals render the comments in literal

[clang] [clang][Diagnostics] Highlight code snippets (PR #66514)

2023-09-20 Thread Timm Baeder via cfe-commits
Timm =?utf-8?q?Bäder?= Message-ID: In-Reply-To: https://github.com/tbaederr updated https://github.com/llvm/llvm-project/pull/66514 >From 4323e6952a577a81a5fdc51ce9571f28d7ccb6f9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Fri, 15 Sep 2023 15:51:39 +0200 Subject:

[clang] [clang][Diagnostics] Highlight code snippets (PR #66514)

2023-09-20 Thread Timm Baeder via cfe-commits
Timm =?utf-8?q?Bäder?= Message-ID: In-Reply-To: tbaederr wrote: ![Screenshot from 2023-09-20 15-36-55](https://github.com/llvm/llvm-project/assets/49720664/fae01c5d-5d36-4be0-905e-54d860017ce0) We might also have to tweak the colors. I'm just not sure if the predefined ones from

[clang] [clang][Diagnostics] Highlight code snippets (PR #66514)

2023-09-20 Thread Timm Baeder via cfe-commits
Timm =?utf-8?q?Bäder?= Message-ID: In-Reply-To: https://github.com/tbaederr updated https://github.com/llvm/llvm-project/pull/66514 >From 4323e6952a577a81a5fdc51ce9571f28d7ccb6f9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Fri, 15 Sep 2023 15:51:39 +0200 Subject:

[clang] [clang][Diagnostics] Highlight code snippets (PR #66514)

2023-09-20 Thread Timm Baeder via cfe-commits
Timm =?utf-8?q?B=C3=A4der?= , Timm =?utf-8?q?B=C3=A4der?= Message-ID: In-Reply-To: tbaederr wrote: The `CodeSnippetHighlighter` class also seems useless now. https://github.com/llvm/llvm-project/pull/66514 ___ cfe-commits mailing list

[clang] [clang][Diagnostics] Highlight code snippets (PR #66514)

2023-09-20 Thread Timm Baeder via cfe-commits
Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= Message-ID: In-Reply-To: https://github.com/tbaederr updated https://github.com/llvm/llvm-project/pull/66514 >From 6d973cbb6cb29f0983ea6a023baf83d205757b3a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Wed, 20 Sep 2023

[clang] [clang][Diagnostics] Highlight code snippets (PR #66514)

2023-09-20 Thread Timm Baeder via cfe-commits
tbaederr wrote: ![Screenshot from 2023-09-20 15-26-50](https://github.com/llvm/llvm-project/assets/49720664/763b0f28-3b05-4843-b71b-0465fba110ca) Slightly sad that `true`/`false`/`nullptr` are also marked as keywords now, I was hoping they would be literals.

[clang] [clang][Diagnostics] Highlight code snippets (PR #66514)

2023-09-20 Thread Timm Baeder via cfe-commits
tbaederr wrote: Okay, that seems quite complex since a lexer with a preprocessor doesn't seem to return comments at all and the tokens I get are all identifiers and don't have their `kw_` state set. Provided what I'm doing isn't completely wrong of course. I'm open to suggestions of course,

[clang] [clang][NFC] Preprocessor only needs const LangOptions (PR #66874)

2023-09-20 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr created https://github.com/llvm/llvm-project/pull/66874 NFC but requesting review since something outside of clang or downstream might break? >From 81573459077ce79d65a60310be12f01db4371e9c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Wed, 20

[clang] [clang][Diagnostics] Highlight code snippets (PR #66514)

2023-09-20 Thread Timm Baeder via cfe-commits
tbaederr wrote: > My biggest concerns is the handling of the keywords. It's very inaccurate and > would hard to keep in sync. Totally agree. > I think we could get `TextDiagnostic` to be constructed with a `Preprocessor` > object (by modifying the various `BeginSourceFile` implementations,

[clang] [clang][Interp] Zero-init remaining string literal elements (PR #66862)

2023-09-20 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr created https://github.com/llvm/llvm-project/pull/66862 None >From 270735d2dd62027fdb42b8d29c79972434a5cde1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Wed, 20 Sep 2023 08:18:51 +0200 Subject: [PATCH] [clang][Interp] Zero-init remaining

[clang] [clang] Avoid evaluating the BitWidth expression over and over again (PR #66203)

2023-09-19 Thread Timm Baeder via cfe-commits
tbaederr wrote: Ping https://github.com/llvm/llvm-project/pull/66203 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][Diagnostics] Highlight code snippets (PR #66514)

2023-09-19 Thread Timm Baeder via cfe-commits
tbaederr wrote: Ping https://github.com/llvm/llvm-project/pull/66514 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [Sema] Fix fixit cast printing inside macros (PR #66853)

2023-09-19 Thread Timm Baeder via cfe-commits
tbaederr wrote: Since this is a diagnostic improvement, can you post the before and after output of an example? https://github.com/llvm/llvm-project/pull/66853 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[clang] [clang][TSA] Consider cleanup functions for thread safety analysis (PR #65462)

2023-09-19 Thread Timm Baeder via cfe-commits
Timm =?utf-8?q?Bäder?= Message-ID: In-Reply-To: https://github.com/tbaederr closed https://github.com/llvm/llvm-project/pull/65462 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][TSA] Consider cleanup functions for thread safety analysis (PR #65462)

2023-09-19 Thread Timm Baeder via cfe-commits
Timm =?utf-8?q?B=C3=A4der?= Message-ID: In-Reply-To: tbaederr wrote: Review continued on Phabricator. https://github.com/llvm/llvm-project/pull/65462 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[clang] [clang][Interp] Emit dummy values for unknown C variables (PR #66749)

2023-09-19 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr created https://github.com/llvm/llvm-project/pull/66749 We can't load anything from them, but we can still take their address or return them as lvalues. >From 9952d03bf25766ada5a41c13c3be45f9bd1e8bf2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?=

[clang] [clang][Interp] Add IntegralAP for arbitrary-precision integers (PR #65844)

2023-09-18 Thread Timm Baeder via cfe-commits
Timm =?utf-8?q?B=C3=A4der?= , Timm =?utf-8?q?B=C3=A4der?= , Timm =?utf-8?q?B=C3=A4der?= Message-ID: In-Reply-To: tbaederr wrote: Ping https://github.com/llvm/llvm-project/pull/65844 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[clang] [clang][Interp] Three-way comparisons (PR #65901)

2023-09-18 Thread Timm Baeder via cfe-commits
tbaederr wrote: Ping https://github.com/llvm/llvm-project/pull/65901 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][Interp] Add IntegralAP for arbitrary-precision integers (PR #65844)

2023-09-15 Thread Timm Baeder via cfe-commits
Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= Message-ID: In-Reply-To: https://github.com/tbaederr updated https://github.com/llvm/llvm-project/pull/65844 >From 1e61f47f0978446915cf250b017ea68b0e271d2d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?=

[clang] [clang][Interp] Three-way comparisons (PR #65901)

2023-09-15 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr updated https://github.com/llvm/llvm-project/pull/65901 >From 1b76f3b46359c7a688bc5cefc15254253fb57e64 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Sun, 10 Sep 2023 17:02:22 +0200 Subject: [PATCH] [clang][Interp] Three-way comparisons ---

[clang] [clang][Interp] Handle AttributedStmts (PR #66495)

2023-09-15 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr closed https://github.com/llvm/llvm-project/pull/66495 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][Diagnostics] Highlight code snippets (PR #66514)

2023-09-15 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr updated https://github.com/llvm/llvm-project/pull/66514 >From 7ff6c1b8cb0fed5c4365f560f546b8f1c9d975c8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Fri, 15 Sep 2023 15:51:39 +0200 Subject: [PATCH] [clang][Diagnostics] Highlight code snippets

[clang] [clang][Diagnostics] Highlight code snippets (PR #66514)

2023-09-15 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr updated https://github.com/llvm/llvm-project/pull/66514 >From 85e868765f37e09b922ff00869f1f1a7ff1ebd9a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Fri, 15 Sep 2023 15:51:39 +0200 Subject: [PATCH] [clang][Diagnostics] Highlight code snippets

[clang] [clang][Diagnostics] Highlight code snippets (PR #66514)

2023-09-15 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr created https://github.com/llvm/llvm-project/pull/66514 Add some primitive syntax highlighting to our code snippet output. Before: ![Screenshot from 2023-09-15 16-00-23](https://github.com/llvm/llvm-project/assets/49720664/8e43767a-d939-4c9f-ac2d-65e2df5de1f2)

[clang] [clang][Interp] Handle AttributedStmts (PR #66495)

2023-09-15 Thread Timm Baeder via cfe-commits
@@ -628,6 +630,12 @@ bool ByteCodeStmtGen::visitAsmStmt(const AsmStmt *S) { return this->emitInvalid(S); } +template +bool ByteCodeStmtGen::visitAttributedStmt(const AttributedStmt *S) { + // Ignore all attributes. tbaederr wrote: > Is this what we want

[clang] [clang][Interp] Add IntegralAP for arbitrary-precision integers (PR #65844)

2023-09-15 Thread Timm Baeder via cfe-commits
Timm =?utf-8?q?Bäder?= , Timm =?utf-8?q?Bäder?= Message-ID: In-Reply-To: https://github.com/tbaederr updated https://github.com/llvm/llvm-project/pull/65844 >From db98faff4cfc86657ee8f47dac0e1e2a441049b8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Sat, 9 Sep 2023

[clang] [clang][Interp] Handle AttributedStmts (PR #66495)

2023-09-15 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr created https://github.com/llvm/llvm-project/pull/66495 Just ignore the attributes. >From c1c216058408cf54771bfdac71b0bcf28110f292 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Fri, 15 Sep 2023 12:55:04 +0200 Subject: [PATCH] [clang][Interp]

[clang] [clang][doc] Add documentation for the ASTs used to represent C++ templates (PR #66436)

2023-09-15 Thread Timm Baeder via cfe-commits
tbaederr wrote: TBH, not sure if the UML diagrams would really help anyone understand what's going on. https://github.com/llvm/llvm-project/pull/66436 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[clang] [clang] Avoid evaluating the BitWidth expression over and over again (PR #66203)

2023-09-15 Thread Timm Baeder via cfe-commits
tbaederr wrote: @cor3ntin Looking at this again... while I'd also like to see the general solution, I'd probably apply this anyway since it makes it clearer that this function can actually be fast. Its name is terrible for what it does. It sounds like it's a simply getter but in reality it

[clang] [Clang] Handle consteval expression in array bounds expressions (PR #66222)

2023-09-13 Thread Timm Baeder via cfe-commits
tbaederr wrote: @hazohelet Does this collide or intersect with the work wrt. (un)evaluated contexts in https://reviews.llvm.org/D155064 ? https://github.com/llvm/llvm-project/pull/66222 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[clang] [clang] Avoid evaluating the BitWidth expression over and over again (PR #66203)

2023-09-13 Thread Timm Baeder via cfe-commits
tbaederr wrote: > Hum... should we put that in `EvaluateKnownConstInt` directly? Bitfields are > not the only use case See https://reviews.llvm.org/D155548 - I can't really support any of this with performance numbers (from my testing, I can't even support that we short-circuit

[clang] [clang] Avoid evaluating the BitWidth expression over and over again (PR #66203)

2023-09-13 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr review_requested https://github.com/llvm/llvm-project/pull/66203 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang] Avoid evaluating the BitWidth expression over and over again (PR #66203)

2023-09-13 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr created https://github.com/llvm/llvm-project/pull/66203: It's usually a ConstantExpr with a saved constant integer anyway, so we can just return that. >From 7668b4e5eb09b05c50ef67b23671dc2d19e12046 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date:

[clang] [clang][Sema] Rename ActOnIVar parameter (PR #66181)

2023-09-13 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr closed https://github.com/llvm/llvm-project/pull/66181 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][Sema] Rename ActOnIVar parameter (PR #66181)

2023-09-13 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr review_requested https://github.com/llvm/llvm-project/pull/66181 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][Sema] Rename ActOnIVar parameter (PR #66181)

2023-09-13 Thread Timm Baeder via cfe-commits
https://github.com/tbaederr created https://github.com/llvm/llvm-project/pull/66181: I don't now squat about Objective C, but the extra variable (and cast) seemed unnecessary and this is a good opportunity to re-format that ugly parameter list. >From 37501edc47aea61b09ab775dbbc36b801cc0994e

[clang] [clang][Interp] Add IntegralAP for arbitrary-precision integers (PR #65844)

2023-09-12 Thread Timm Baeder via cfe-commits
Timm =?utf-8?q?Bäder?= https://github.com/tbaederr updated https://github.com/llvm/llvm-project/pull/65844: >From 4e49f66c7bc814510f2dc923129eab8bcca5eca0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timm=20B=C3=A4der?= Date: Sat, 9 Sep 2023 10:34:26 +0200 Subject: [PATCH 1/2] [clang][Interp]

[clang] [clang][Interp] Add IntegralAP for arbitrary-precision integers (PR #65844)

2023-09-12 Thread Timm Baeder via cfe-commits
Timm =?utf-8?q?Bäder?= https://github.com/tbaederr resolved https://github.com/llvm/llvm-project/pull/65844 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

<    5   6   7   8   9   10   11   >