[PATCH] D125137: [clang-format] Don't remove braces if a 1-statement body would wrap
Owen Pan via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Wed May 11 13:05:15 PDT 2022
owenpan added inline comments.
================
Comment at: clang/lib/Format/UnwrappedLineParser.cpp:766
+ assert(!Tokens.empty());
+ const auto *LastToken = Tokens.back().Tok;
+ assert(LastToken);
----------------
curdeius wrote:
> It might be a matter of taste but adding this variable makes the code harder to read to me.
The last token of `ParsedLine` is of interest here. We want the annotator to compute its `TotalLength` to determine whether the line might fit on a single line. I'm open to renaming the variable if you have a better suggestion.
================
Comment at: clang/lib/Format/UnwrappedLineParser.cpp:777
+ SavedToken.Tok->copyFrom(*Token.Tok);
+ SavedToken.Children = std::move(Token.Children);
+ }
----------------
curdeius wrote:
> So the token's children are modified (moved)? Is it done so that children be not considered by the annotator?
Both the constructor and the destructor of `AnnotatedLine` clear the children of `UnwrappedLineNode`, so we save them beforehand and restore them afterward.
================
Comment at: clang/lib/Format/UnwrappedLineParser.cpp:787
+
+ const int Length = LastToken->TotalLength;
+
----------------
curdeius wrote:
> Why not like this?
> Why not like this?
See the assertion on line 781 above. We are computing the `TotalLength` of `LastToken` via `Line`. Either way works, but I prefer the simpler expression. I can change it though if you insist.
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D125137/new/
https://reviews.llvm.org/D125137
More information about the cfe-commits
mailing list