[clang] [clang-format] Handle templates in qualified typenames (PR #143194)

2025-07-17 Thread Björn Schäpers via cfe-commits
@@ -3630,6 +3630,36 @@ static unsigned maxNestingDepth(const AnnotatedLine &Line) { return Result; } +// Returns the token after the first qualifier of the name, or nullptr if there +// is no qualifier. +static FormatToken* skipNameQualifier(const FormatToken *Tok) { --

[clang] [clang-format] Fix a regression of annotating PointerOrReference (PR #149039)

2025-07-17 Thread Björn Schäpers via cfe-commits
@@ -3122,6 +3122,9 @@ class AnnotatingParser { } } +if (PrevToken->isTypeName(LangOpts)) HazardyKnusperkeks wrote: Thanks. https://github.com/llvm/llvm-project/pull/149039 ___ cfe-commits mailing list

[clang] [clang-format] Fix a regression of annotating PointerOrReference (PR #149039)

2025-07-17 Thread Björn Schäpers via cfe-commits
https://github.com/HazardyKnusperkeks approved this pull request. https://github.com/llvm/llvm-project/pull/149039 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang-format] Fix a regression of annotating PointerOrReference (PR #149039)

2025-07-16 Thread Björn Schäpers via cfe-commits
@@ -3122,6 +3122,9 @@ class AnnotatingParser { } } +if (PrevToken->isTypeName(LangOpts)) HazardyKnusperkeks wrote: So this does not work with `bool foo = requires { static_cast(1); };`? https://github.com/llvm/llvm-project/pull/149039

[clang] [clang-format] Add IgnoreExtension to SortIncludes (PR #137840)

2025-07-15 Thread Björn Schäpers via cfe-commits
https://github.com/HazardyKnusperkeks approved this pull request. https://github.com/llvm/llvm-project/pull/137840 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang-format] Remove code related to trigraphs (PR #148640)

2025-07-14 Thread Björn Schäpers via cfe-commits
https://github.com/HazardyKnusperkeks approved this pull request. https://github.com/llvm/llvm-project/pull/148640 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang-format][NFC] Simplify some logic in BreakableLineCommentSection (PR #148324)

2025-07-13 Thread Björn Schäpers via cfe-commits
https://github.com/HazardyKnusperkeks approved this pull request. https://github.com/llvm/llvm-project/pull/148324 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang-format][NFC] Simplify some logic in BreakableLineCommentSection (PR #148324)

2025-07-13 Thread Björn Schäpers via cfe-commits
@@ -927,14 +927,12 @@ BreakableLineCommentSection::BreakableLineCommentSection( } if (Lines[i].size() != IndentPrefix.size()) { -PrefixSpaceChange[i] = FirstLineSpaceChange; +assert(Lines[i].size() > IndentPrefix.size()); -if (SpacesInPref

[clang] [clang-format] Add MacrosSkippedByRemoveParentheses option (PR #148345)

2025-07-13 Thread Björn Schäpers via cfe-commits
https://github.com/HazardyKnusperkeks approved this pull request. https://github.com/llvm/llvm-project/pull/148345 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang-format] Add FunctionLikeMacros option (PR #148345)

2025-07-13 Thread Björn Schäpers via cfe-commits
@@ -2786,6 +2786,11 @@ struct FormatStyle { /// \version 3.7 std::vector ForEachMacros; + /// A vector of function-like macros whose invocations should be skipped by + /// ``RemoveParentheses``. + /// \version 21 + std::vector FunctionLikeMacros; Hazar

[clang] [clang-format][NFC] Simplify some logic in BreakableLineCommentSection (PR #148324)

2025-07-13 Thread Björn Schäpers via cfe-commits
@@ -927,14 +927,12 @@ BreakableLineCommentSection::BreakableLineCommentSection( } if (Lines[i].size() != IndentPrefix.size()) { -PrefixSpaceChange[i] = FirstLineSpaceChange; +assert(Lines[i].size() > IndentPrefix.size()); -if (SpacesInPref

[clang] [clang-format][NFC] Simplify some logic in BreakableLineCommentSection (PR #148324)

2025-07-12 Thread Björn Schäpers via cfe-commits
@@ -927,14 +927,12 @@ BreakableLineCommentSection::BreakableLineCommentSection( } if (Lines[i].size() != IndentPrefix.size()) { -PrefixSpaceChange[i] = FirstLineSpaceChange; +assert(Lines[i].size() > IndentPrefix.size()); -if (SpacesInPref

[clang] [clang-format] Add FunctionLikeMacros option (PR #148345)

2025-07-12 Thread Björn Schäpers via cfe-commits
@@ -2786,6 +2786,11 @@ struct FormatStyle { /// \version 3.7 std::vector ForEachMacros; + /// A vector of function-like macros whose invocations should be skipped by + /// ``RemoveParentheses``. + /// \version 21 + std::vector FunctionLikeMacros; Hazar

[clang] [clang-format][NFC] Replace a function with StringRef::contains (PR #146245)

2025-07-10 Thread Björn Schäpers via cfe-commits
https://github.com/HazardyKnusperkeks approved this pull request. https://github.com/llvm/llvm-project/pull/146245 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang-format][NFC] Replace a function with StringRef::contains (PR #146245)

2025-07-10 Thread Björn Schäpers via cfe-commits
HazardyKnusperkeks wrote: > Had we used `StringRef::contains` initially, would you still insist that it > be replaced with a "more performant" local function? Of course not, because no one would go look for it. https://github.com/llvm/llvm-project/pull/146245 _

[clang] [clang-format] Stop crashing when the input contains `??/\n` (PR #147156)

2025-07-06 Thread Björn Schäpers via cfe-commits
HazardyKnusperkeks wrote: > > I added code to count the number of characters in the escape sequence > > probably just because the block of code used to have a comment saying > > someone should add the feature. > > > I am not sure we should support the trigraph. I don't know anyone who uses >

[clang] [clang-format][NFC] Replace size() with empty() (PR #147164)

2025-07-06 Thread Björn Schäpers via cfe-commits
https://github.com/HazardyKnusperkeks approved this pull request. https://github.com/llvm/llvm-project/pull/147164 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang-format] Propagate `LeadingEmptyLinesAffected` when joining lines (PR #146761)

2025-07-03 Thread Björn Schäpers via cfe-commits
https://github.com/HazardyKnusperkeks approved this pull request. Please wait a few days, or until another approval. https://github.com/llvm/llvm-project/pull/146761 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin

[clang] [clang-format][NFC] Replace a function with StringRef::contains (PR #146245)

2025-07-02 Thread Björn Schäpers via cfe-commits
HazardyKnusperkeks wrote: > > While it is less code, I find a bit harder to understand and the code gen > > is far worse: https://gcc.godbolt.org/z/KzG4YnTh3 > > `IsBlank` is misleading because of `std::isblank` whereas `Blanks.contains` > is not, so the latter has better readability for me. A

[clang] [clang-format][NFC] Replace a function with StringRef::contains (PR #146245)

2025-06-29 Thread Björn Schäpers via cfe-commits
https://github.com/HazardyKnusperkeks commented: While it is less code, I find a bit harder to understand and the code gen is far worse: https://gcc.godbolt.org/z/KzG4YnTh3 https://github.com/llvm/llvm-project/pull/146245 ___ cfe-commits mailing list

[clang] [clang-format] Make EndsInComma in ContinuationIndenter consistent (PR #146256)

2025-06-29 Thread Björn Schäpers via cfe-commits
https://github.com/HazardyKnusperkeks approved this pull request. https://github.com/llvm/llvm-project/pull/146256 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang-format] Fix a bug in `ReflowComments: Always` (PR #146202)

2025-06-28 Thread Björn Schäpers via cfe-commits
https://github.com/HazardyKnusperkeks approved this pull request. https://github.com/llvm/llvm-project/pull/146202 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] clang-format: Add IncludeSortKey option (PR #137840)

2025-06-26 Thread Björn Schäpers via cfe-commits
@@ -1647,7 +1647,7 @@ FormatStyle getLLVMStyle(FormatStyle::LanguageKind Language) { LLVMStyle.SeparateDefinitionBlocks = FormatStyle::SDS_Leave; LLVMStyle.ShortNamespaceLines = 1; LLVMStyle.SkipMacroDefinitionBody = false; - LLVMStyle.SortIncludes = {/*Enabled=*/true,

[clang] [clang-format][NFC] Remove `\brief` from comments (PR #145853)

2025-06-26 Thread Björn Schäpers via cfe-commits
https://github.com/HazardyKnusperkeks approved this pull request. https://github.com/llvm/llvm-project/pull/145853 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] clang-format: Add IncludeSortKey option (PR #137840)

2025-06-26 Thread Björn Schäpers via cfe-commits
@@ -1647,7 +1647,7 @@ FormatStyle getLLVMStyle(FormatStyle::LanguageKind Language) { LLVMStyle.SeparateDefinitionBlocks = FormatStyle::SDS_Leave; LLVMStyle.ShortNamespaceLines = 1; LLVMStyle.SkipMacroDefinitionBody = false; - LLVMStyle.SortIncludes = {/*Enabled=*/true,

[clang] clang-format: Add IncludeSortKey option (PR #137840)

2025-06-26 Thread Björn Schäpers via cfe-commits
@@ -4382,8 +4382,18 @@ struct FormatStyle { ///#include "B/a.h" #include "a/b.h" /// \endcode bool IgnoreCase; +/// When sorting includes in each block, Only take file extensions into HazardyKnusperkeks wrote: ```suggestion //

[clang] [clang-format] Handle Trailing Whitespace After Line Continuation (P2223R2) (PR #145243)

2025-06-25 Thread Björn Schäpers via cfe-commits
https://github.com/HazardyKnusperkeks closed https://github.com/llvm/llvm-project/pull/145243 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang-format] Handle Trailing Whitespace After Line Continuation (P2223R2) (PR #145243)

2025-06-25 Thread Björn Schäpers via cfe-commits
@@ -1295,13 +1305,18 @@ FormatToken *FormatTokenLexer::getNextToken() { case '/': // The text was entirely whitespace when this loop was entered. Thus // this has to be an escape sequence. -assert(Text.substr(i, 2) == "\\\r" || Text.substr(i, 2) ==

[clang] [clang-format] Handle Trailing Whitespace After Line Continuation (P2223R2) (PR #145243)

2025-06-25 Thread Björn Schäpers via cfe-commits
@@ -1295,13 +1305,18 @@ FormatToken *FormatTokenLexer::getNextToken() { case '/': // The text was entirely whitespace when this loop was entered. Thus // this has to be an escape sequence. -assert(Text.substr(i, 2) == "\\\r" || Text.substr(i, 2) ==

[clang] Remove unneeded checks for null; NFC (PR #145686)

2025-06-25 Thread Björn Schäpers via cfe-commits
https://github.com/HazardyKnusperkeks approved this pull request. https://github.com/llvm/llvm-project/pull/145686 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang-format] Added AlignConsecutiveTableGenBreakingDAGArgColons option. (PR #86150)

2025-06-25 Thread Björn Schäpers via cfe-commits
HazardyKnusperkeks wrote: I don't actually understand your problem. Can you open an issue and give the input, the output and the expected output, along with your `.clang-format`? You can tag me and I'll have a look at it. https://github.com/llvm/llvm-project/pull/86150

[clang] [clang-format] Improve QualifierAlignment in guessing macros (PR #145468)

2025-06-24 Thread Björn Schäpers via cfe-commits
https://github.com/HazardyKnusperkeks approved this pull request. https://github.com/llvm/llvm-project/pull/145468 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang-format] Handle Trailing Whitespace After Line Continuation (P2223R2) (PR #145243)

2025-06-24 Thread Björn Schäpers via cfe-commits
@@ -1295,13 +1305,18 @@ FormatToken *FormatTokenLexer::getNextToken() { case '/': // The text was entirely whitespace when this loop was entered. Thus // this has to be an escape sequence. -assert(Text.substr(i, 2) == "\\\r" || Text.substr(i, 2) ==

[clang] [clang-format] Handle Trailing Whitespace After Line Continuation (P2223R2) (PR #145243)

2025-06-23 Thread Björn Schäpers via cfe-commits
https://github.com/HazardyKnusperkeks approved this pull request. Please wait for @owenca . https://github.com/llvm/llvm-project/pull/145243 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-com

[clang] [clang-format] Handle Trailing Whitespace After Line Continuation (P2223R2) (PR #145243)

2025-06-22 Thread Björn Schäpers via cfe-commits
@@ -0,0 +1,14 @@ +// RUN: grep -Ev "// *[A-Z-]+:" %s \ HazardyKnusperkeks wrote: We test those things in the unit tests. https://github.com/llvm/llvm-project/pull/145243 ___ cfe-commits mailing list cfe-commits@lists.l

[clang] [clang-format] Handle Trailing Whitespace After Line Continuation (P2223R2) (PR #145243)

2025-06-22 Thread Björn Schäpers via cfe-commits
@@ -0,0 +1,14 @@ +// RUN: grep -Ev "// *[A-Z-]+:" %s \ HazardyKnusperkeks wrote: That's not what I meant. We test in `clang/unittests/Format/FormatTest.cpp`. https://github.com/llvm/llvm-project/pull/145243 ___ cfe-com

[clang] [clang/docs] add a missing brace in ClangFormatStyleOptions.rst (PR #145145)

2025-06-21 Thread Björn Schäpers via cfe-commits
https://github.com/HazardyKnusperkeks closed https://github.com/llvm/llvm-project/pull/145145 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang/docs] add a missing brace in ClangFormatStyleOptions.rst (PR #145145)

2025-06-21 Thread Björn Schäpers via cfe-commits
https://github.com/HazardyKnusperkeks approved this pull request. https://github.com/llvm/llvm-project/pull/145145 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang-format] Allow array alignment on non-rectangular arrays (PR #143781)

2025-06-16 Thread Björn Schäpers via cfe-commits
HazardyKnusperkeks wrote: > > You can't change existing tests, you need an option if you want to pad with > > spaces > > It is unclear to me if this should be considered a bug fix, or a new feature. > Surely requiring new options are not required for every bug fix. > It boils down to the que

[clang] [clang-format][NFC] Clean up DisallowLineBreaks lambda (PR #144255)

2025-06-15 Thread Björn Schäpers via cfe-commits
https://github.com/HazardyKnusperkeks approved this pull request. https://github.com/llvm/llvm-project/pull/144255 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang-format][NFC] Clean up DisallowLineBreaks lambda (PR #144255)

2025-06-15 Thread Björn Schäpers via cfe-commits
@@ -706,42 +706,48 @@ void ContinuationIndenter::addTokenOnCurrentLine(LineState &State, bool DryRun, const FormatToken &Previous = *State.NextToken->Previous; auto &CurrentState = State.Stack.back(); - bool DisallowLineBreaksOnThisLine = - Style.LambdaBodyIndentati

[clang] [clang-format] Fix a bug in annotating braces (PR #144095)

2025-06-13 Thread Björn Schäpers via cfe-commits
https://github.com/HazardyKnusperkeks approved this pull request. https://github.com/llvm/llvm-project/pull/144095 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang-format] Handle templates in qualified typenames (PR #143194)

2025-06-12 Thread Björn Schäpers via cfe-commits
@@ -3651,6 +3674,21 @@ static FormatToken *getFunctionName(const AnnotatedLine &Line, continue; } +// Skip past template typename declarations that may precede the +// constructor/destructor name +if (Tok->is(tok::kw_template)) { Hazardy

[clang] [clang-format] Handle templates in qualified typenames (PR #143194)

2025-06-12 Thread Björn Schäpers via cfe-commits
@@ -3659,9 +3697,23 @@ static FormatToken *getFunctionName(const AnnotatedLine &Line, } // Skip to the unqualified part of the name. -while (Tok->startsSequence(tok::identifier, tok::coloncolon)) { - assert(Tok->Next); - Tok = Tok->Next->Next; +while

[clang] [clang-format] Handle templates in qualified typenames (PR #143194)

2025-06-12 Thread Björn Schäpers via cfe-commits
@@ -3651,6 +3674,21 @@ static FormatToken *getFunctionName(const AnnotatedLine &Line, continue; } +// Skip past template typename declarations that may precede the +// constructor/destructor name HazardyKnusperkeks wrote: ```suggestion

[clang] [clang-format] Handle templates in qualified typenames (PR #143194)

2025-06-12 Thread Björn Schäpers via cfe-commits
@@ -3622,6 +3622,29 @@ static unsigned maxNestingDepth(const AnnotatedLine &Line) { return Result; } +static bool startsQualifiedName(const FormatToken *Tok) { + // Consider: A::B::B() + // Tok --^ + if (Tok->startsSequence(tok::identifier, tok::coloncolo

[clang] [clang-format] Handle templates in qualified typenames (PR #143194)

2025-06-12 Thread Björn Schäpers via cfe-commits
@@ -3622,6 +3622,29 @@ static unsigned maxNestingDepth(const AnnotatedLine &Line) { return Result; } +static bool startsQualifiedName(const FormatToken *Tok) { HazardyKnusperkeks wrote: Id check for `tok::identifier` and then move to `nextNonComment()` for

[clang] [clang-format] Handle templates in qualified typenames (PR #143194)

2025-06-12 Thread Björn Schäpers via cfe-commits
@@ -3651,6 +3674,21 @@ static FormatToken *getFunctionName(const AnnotatedLine &Line, continue; } +// Skip past template typename declarations that may precede the +// constructor/destructor name +if (Tok->is(tok::kw_template)) { Hazardy

[clang] [clang-format] Allow array alignment on non-rectangular arrays (PR #143781)

2025-06-12 Thread Björn Schäpers via cfe-commits
@@ -27901,39 +27901,39 @@ TEST_F(FormatTest, AlignArrayOfStructuresLeftAlignmentNonSquare) { // crashes, these tests assert that the array is not changed but will // also act as regression tests for when it is properly fixed verifyFormat("struct test demo[] = {\n" -

[clang] [clang-format] Allow array alignment on non-rectangular arrays (PR #143781)

2025-06-12 Thread Björn Schäpers via cfe-commits
@@ -22276,7 +22276,7 @@ TEST_F(FormatTest, CatchAlignArrayOfStructuresLeftAlignment) { verifyFormat("auto foo = Items{\n" "Section{\n" "0, bar(),\n" - "}\n" + "}\n" Haz

[clang] [clang-format] Allow array alignment on non-rectangular arrays (PR #143781)

2025-06-12 Thread Björn Schäpers via cfe-commits
@@ -4251,7 +4251,28 @@ FormatToken *TokenAnnotator::calculateInitializerColumnList( CurrentToken = CurrentToken->Next; if (!CurrentToken) break; - CurrentToken->StartsColumn = true; + + // Right (closing) braces should not count as starting a colu

[clang] Reland "[clang-format][NFC] Clean up fillRanges() in ClangFormat.cpp" (PR #143477)

2025-06-12 Thread Björn Schäpers via cfe-commits
https://github.com/HazardyKnusperkeks approved this pull request. https://github.com/llvm/llvm-project/pull/143477 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang-format] Add options to control wrapped lambda brace indent. (PR #143249)

2025-06-09 Thread Björn Schäpers via cfe-commits
@@ -1547,6 +1547,38 @@ struct FormatStyle { bool BeforeWhile; /// Indent the wrapped braces themselves. bool IndentBraces; +/// Indent nested wrapped lambda braces. HazardyKnusperkeks wrote: Yeah I can't think of a nice name here... @owenca do

[clang] [clang-format] Parse JSON outermost l_brace as braced list brace (PR #143327)

2025-06-09 Thread Björn Schäpers via cfe-commits
https://github.com/HazardyKnusperkeks approved this pull request. https://github.com/llvm/llvm-project/pull/143327 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang-format] Fix an off-by-1 bug with -length option (PR #143302)

2025-06-09 Thread Björn Schäpers via cfe-commits
https://github.com/HazardyKnusperkeks approved this pull request. https://github.com/llvm/llvm-project/pull/143302 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang-format] Add options to control wrapped lambda brace indent. (PR #143249)

2025-06-07 Thread Björn Schäpers via cfe-commits
https://github.com/HazardyKnusperkeks commented: A general note, if you comment in the `Files changed` tab and `Start a review` it should only send one email for all your comments. https://github.com/llvm/llvm-project/pull/143249 ___ cfe-commits maili

[clang] [clang-format] Add options to control wrapped lambda brace indent. (PR #143249)

2025-06-07 Thread Björn Schäpers via cfe-commits
https://github.com/HazardyKnusperkeks edited https://github.com/llvm/llvm-project/pull/143249 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang-format] Add options to control wrapped lambda brace indent. (PR #143249)

2025-06-07 Thread Björn Schäpers via cfe-commits
@@ -1547,6 +1547,38 @@ struct FormatStyle { bool BeforeWhile; /// Indent the wrapped braces themselves. bool IndentBraces; +/// Indent nested wrapped lambda braces. HazardyKnusperkeks wrote: I don't really have something, but you should swap La

[clang] [clang-format] Add options to control wrapped lambda brace indent. (PR #143249)

2025-06-07 Thread Björn Schäpers via cfe-commits
@@ -1334,12 +1334,15 @@ unsigned ContinuationIndenter::getNewLineColumn(const LineState &State) { Style.IndentWidth; } - if (Style.BraceWrapping.BeforeLambdaBody && - Style.BraceWrapping.IndentBraces && Current.is(TT_LambdaLBrace)) { + if (Style.BraceWrapp

[clang] [clang-format][NFC] Clean up fillRanges() in ClangFormat.cpp (PR #143236)

2025-06-07 Thread Björn Schäpers via cfe-commits
@@ -284,27 +284,23 @@ static bool fillRanges(MemoryBuffer *Code, errs() << "error: number of -offset and -length arguments must match.\n"; return true; } - for (unsigned i = 0, e = Offsets.size(); i != e; ++i) { -if (Offsets[i] >= Code->getBufferSize()) { -

[clang] [clang-format] Add options to control wrapped lambda brace indent. (PR #143249)

2025-06-07 Thread Björn Schäpers via cfe-commits
@@ -1334,12 +1334,15 @@ unsigned ContinuationIndenter::getNewLineColumn(const LineState &State) { Style.IndentWidth; } - if (Style.BraceWrapping.BeforeLambdaBody && - Style.BraceWrapping.IndentBraces && Current.is(TT_LambdaLBrace)) { + if (Style.BraceWrapp

[clang] [clang-format] Add options to control wrapped lambda brace indent. (PR #143249)

2025-06-07 Thread Björn Schäpers via cfe-commits
@@ -1547,6 +1547,38 @@ struct FormatStyle { bool BeforeWhile; /// Indent the wrapped braces themselves. bool IndentBraces; +/// Indent nested wrapped lambda braces. HazardyKnusperkeks wrote: I think a better name is in order, when reading neste

[clang] [clang-format] Add options to control wrapped lambda brace indent. (PR #143249)

2025-06-07 Thread Björn Schäpers via cfe-commits
@@ -1334,12 +1334,15 @@ unsigned ContinuationIndenter::getNewLineColumn(const LineState &State) { Style.IndentWidth; } - if (Style.BraceWrapping.BeforeLambdaBody && - Style.BraceWrapping.IndentBraces && Current.is(TT_LambdaLBrace)) { + if (Style.BraceWrapp

[clang] [clang-format] Add options to control wrapped lambda brace indent. (PR #143249)

2025-06-07 Thread Björn Schäpers via cfe-commits
@@ -1334,12 +1334,15 @@ unsigned ContinuationIndenter::getNewLineColumn(const LineState &State) { Style.IndentWidth; } - if (Style.BraceWrapping.BeforeLambdaBody && - Style.BraceWrapping.IndentBraces && Current.is(TT_LambdaLBrace)) { + if (Style.BraceWrapp

[clang] [clang-format][NFC] Clean up fillRanges() in ClangFormat.cpp (PR #143236)

2025-06-07 Thread Björn Schäpers via cfe-commits
@@ -284,27 +284,23 @@ static bool fillRanges(MemoryBuffer *Code, errs() << "error: number of -offset and -length arguments must match.\n"; HazardyKnusperkeks wrote: Is it maybe worth handling the `Offsets.empty() && Lengths.empty()` case by its own, and the

[clang] [clang-format][NFC] Clean up fillRanges() in ClangFormat.cpp (PR #143236)

2025-06-07 Thread Björn Schäpers via cfe-commits
@@ -284,27 +284,23 @@ static bool fillRanges(MemoryBuffer *Code, errs() << "error: number of -offset and -length arguments must match.\n"; return true; } - for (unsigned i = 0, e = Offsets.size(); i != e; ++i) { -if (Offsets[i] >= Code->getBufferSize()) { -

[clang] [clang-format][NFC] Clean up fillRanges() in ClangFormat.cpp (PR #143236)

2025-06-07 Thread Björn Schäpers via cfe-commits
https://github.com/HazardyKnusperkeks approved this pull request. https://github.com/llvm/llvm-project/pull/143236 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang-format] Handle function decls with MS calling conventions (PR #143083)

2025-06-05 Thread Björn Schäpers via cfe-commits
https://github.com/HazardyKnusperkeks approved this pull request. https://github.com/llvm/llvm-project/pull/143083 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang-format] Handle requires clause following a pointer type (PR #142893)

2025-06-05 Thread Björn Schäpers via cfe-commits
https://github.com/HazardyKnusperkeks approved this pull request. For all sane code this works. Although there are valid codes where a star can preceed a requires expression. https://github.com/llvm/llvm-project/pull/142893 ___ cfe-commits mailing lis

[clang] [clang-format][NFC] Clean up AnnotatingParser::consumeToken() (PR #142104)

2025-06-03 Thread Björn Schäpers via cfe-commits
HazardyKnusperkeks wrote: I'd say yes. https://github.com/llvm/llvm-project/pull/142104 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang-format] Correctly annotate token-pasted function decl names (PR #142337)

2025-06-02 Thread Björn Schäpers via cfe-commits
https://github.com/HazardyKnusperkeks approved this pull request. https://github.com/llvm/llvm-project/pull/142337 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang-format] Correctly annotate token-pasted function decl names (PR #142337)

2025-06-02 Thread Björn Schäpers via cfe-commits
@@ -3848,6 +3848,8 @@ static bool isFunctionDeclarationName(const LangOptions &LangOpts, } else { if (Current.isNot(TT_StartOfName) || Current.NestingLevel != 0) return false; +while (Next && Next->startsSequence(tok::hashhash, tok::identifier)) ---

[clang] [clang-format] Correctly annotate token-pasted function decl names (PR #142337)

2025-06-02 Thread Björn Schäpers via cfe-commits
@@ -2257,6 +2257,13 @@ TEST_F(TokenAnnotatorTest, UnderstandsFunctionDeclarationNames) { EXPECT_TOKEN(Tokens[1], tok::identifier, TT_FunctionDeclarationName); EXPECT_TOKEN(Tokens[2], tok::l_paren, TT_FunctionDeclarationLParen); + Tokens = annotate("#define FUNC(foo, bar)

[clang] [clang-format] Stop moving lambda to new line only to indent it more. (PR #141576)

2025-06-01 Thread Björn Schäpers via cfe-commits
https://github.com/HazardyKnusperkeks approved this pull request. Please wait for @owenca or @mydeveloperday. https://github.com/llvm/llvm-project/pull/141576 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailma

[clang] [clang-format] Handle token-pasted function decl names (PR #142251)

2025-05-31 Thread Björn Schäpers via cfe-commits
https://github.com/HazardyKnusperkeks approved this pull request. https://github.com/llvm/llvm-project/pull/142251 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang-format][NFC] Clean up AnnotatingParser::consumeToken() (PR #142104)

2025-05-30 Thread Björn Schäpers via cfe-commits
https://github.com/HazardyKnusperkeks approved this pull request. https://github.com/llvm/llvm-project/pull/142104 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang-format] Handle .h files for LK_C and LK_ObjC (PR #141714)

2025-05-28 Thread Björn Schäpers via cfe-commits
https://github.com/HazardyKnusperkeks approved this pull request. https://github.com/llvm/llvm-project/pull/141714 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang-format] Stop moving lambda to new line only to indent it more. (PR #141576)

2025-05-27 Thread Björn Schäpers via cfe-commits
@@ -23814,6 +23814,20 @@ TEST_F(FormatTest, FormatsLambdas) { "}", LLVMWithBeforeLambdaBody); + // Make sure we don't put the lambda on a new line when it would be indented HazardyKnusperkeks wrote: I think you can drop the comm

[clang] [clang-format] Stop moving lambda to new line only to indent it more. (PR #141576)

2025-05-27 Thread Björn Schäpers via cfe-commits
@@ -325,13 +325,30 @@ bool ContinuationIndenter::canBreak(const LineState &State) { if (Current.isMemberAccess() && CurrentState.ContainsUnwrappedBuilder) return false; - // Don't create a 'hanging' indent if there are multiple blocks in a single - // statement and we

[clang] [clang-format] Stop moving lambda to new line only to indent it more. (PR #141576)

2025-05-27 Thread Björn Schäpers via cfe-commits
@@ -23814,6 +23814,20 @@ TEST_F(FormatTest, FormatsLambdas) { "}", LLVMWithBeforeLambdaBody); + // Make sure we don't put the lambda on a new line when it would be indented + // more than where it would be otherwise. + verifyFormat("if ([]()\n"

[clang] [clang-format] Handle Java text blocks (PR #141334)

2025-05-25 Thread Björn Schäpers via cfe-commits
https://github.com/HazardyKnusperkeks approved this pull request. https://github.com/llvm/llvm-project/pull/141334 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang-format] Handle Java text blocks (PR #141334)

2025-05-24 Thread Björn Schäpers via cfe-commits
https://github.com/HazardyKnusperkeks approved this pull request. https://github.com/llvm/llvm-project/pull/141334 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang-format][NFC] FormatTokenLexer.cpp cleanup (PR #141202)

2025-05-23 Thread Björn Schäpers via cfe-commits
https://github.com/HazardyKnusperkeks approved this pull request. https://github.com/llvm/llvm-project/pull/141202 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang-format][NFC] Minor efficiency cleanup (PR #140835)

2025-05-21 Thread Björn Schäpers via cfe-commits
https://github.com/HazardyKnusperkeks approved this pull request. https://github.com/llvm/llvm-project/pull/140835 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] clang-format: Add IncludeSortKey option (PR #137840)

2025-05-20 Thread Björn Schäpers via cfe-commits
@@ -1647,7 +1647,7 @@ FormatStyle getLLVMStyle(FormatStyle::LanguageKind Language) { LLVMStyle.SeparateDefinitionBlocks = FormatStyle::SDS_Leave; LLVMStyle.ShortNamespaceLines = 1; LLVMStyle.SkipMacroDefinitionBody = false; - LLVMStyle.SortIncludes = {/*Enabled=*/true,

[clang] [clang-format] Add IndentPPDirectives Leave option (PR #139750)

2025-05-19 Thread Björn Schäpers via cfe-commits
@@ -1142,7 +1144,8 @@ void UnwrappedLineParser::parsePPEndIf() { // If the #endif of a potential include guard is the last thing in the file, // then we found an include guard. if (IncludeGuard == IG_Defined && PPBranchLevel == -1 && Tokens->isEOF() && - Style.Indent

[clang] [clang-format] Merge short inline function in macro definition body (PR #140366)

2025-05-19 Thread Björn Schäpers via cfe-commits
https://github.com/HazardyKnusperkeks approved this pull request. https://github.com/llvm/llvm-project/pull/140366 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang-format] Fix the indent of StartOfName after AttributeMacro (PR #140361)

2025-05-19 Thread Björn Schäpers via cfe-commits
https://github.com/HazardyKnusperkeks approved this pull request. https://github.com/llvm/llvm-project/pull/140361 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang-format][NFC] Upgrade SortIncludes option to a struct (PR #140497)

2025-05-19 Thread Björn Schäpers via cfe-commits
https://github.com/HazardyKnusperkeks approved this pull request. https://github.com/llvm/llvm-project/pull/140497 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] clang-format: Add IncludeSortKey option (PR #137840)

2025-05-19 Thread Björn Schäpers via cfe-commits
@@ -152,6 +152,10 @@ struct IncludeStyle { /// \version 10 std::string IncludeIsMainSourceRegex; + /// When sorting includes in each block, ignore file extensions. HazardyKnusperkeks wrote: I currently don't have a better name, but this isn't correct. Yo

[clang] clang-format: Add IncludeSortKey option (PR #137840)

2025-05-19 Thread Björn Schäpers via cfe-commits
@@ -5368,6 +5368,8 @@ struct FormatStyle { IncludeStyle.IncludeIsMainSourceRegex == R.IncludeStyle.IncludeIsMainSourceRegex && IncludeStyle.MainIncludeChar == R.IncludeStyle.MainIncludeChar && + IncludeStyle.IncludeSortIgnoreExtens

[clang] [clang-format] Handle C# where clause in SeparateDefinitionBlocks (PR #139034)

2025-05-08 Thread Björn Schäpers via cfe-commits
https://github.com/HazardyKnusperkeks approved this pull request. https://github.com/llvm/llvm-project/pull/139034 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang-format] Don't annotate enum colon as InheritanceColon (PR #138440)

2025-05-06 Thread Björn Schäpers via cfe-commits
https://github.com/HazardyKnusperkeks approved this pull request. https://github.com/llvm/llvm-project/pull/138440 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang-format] Fix a bug in annotating binary operator && (PR #138633)

2025-05-06 Thread Björn Schäpers via cfe-commits
https://github.com/HazardyKnusperkeks approved this pull request. https://github.com/llvm/llvm-project/pull/138633 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang-format] Correctly annotate C# nullable value type `?` (PR #138631)

2025-05-06 Thread Björn Schäpers via cfe-commits
https://github.com/HazardyKnusperkeks approved this pull request. https://github.com/llvm/llvm-project/pull/138631 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang-format] Don't annotate enum colon as InheritanceColon (PR #138440)

2025-05-05 Thread Björn Schäpers via cfe-commits
https://github.com/HazardyKnusperkeks approved this pull request. https://github.com/llvm/llvm-project/pull/138440 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang-format] Don't annotate enum colon as InheritanceColon (PR #138440)

2025-05-04 Thread Björn Schäpers via cfe-commits
@@ -1423,7 +1423,7 @@ class AnnotatingParser { Tok->setType(TT_BitFieldColon); } else if (Contexts.size() == 1 && !Line.First->isOneOf(tok::kw_enum, tok::kw_case, - tok::kw_default)) { +

[clang] [clang-format] Correctly annotate tok::star in braced list (PR #138389)

2025-05-03 Thread Björn Schäpers via cfe-commits
https://github.com/HazardyKnusperkeks approved this pull request. https://github.com/llvm/llvm-project/pull/138389 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang-format] Fix a crash on formatting missing r_paren/r_brace (PR #138230)

2025-05-02 Thread Björn Schäpers via cfe-commits
https://github.com/HazardyKnusperkeks approved this pull request. https://github.com/llvm/llvm-project/pull/138230 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang-format] RemoveParentheses shouldn't remove empty parentheses (PR #138229)

2025-05-02 Thread Björn Schäpers via cfe-commits
https://github.com/HazardyKnusperkeks approved this pull request. https://github.com/llvm/llvm-project/pull/138229 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

  1   2   3   4   5   6   7   8   9   10   >