[PATCH] D63062: [clang-format] Added New Style Rule: BitFieldDeclarationsOnePerLine
MyDeveloperDay via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Thu Sep 26 01:32:16 PDT 2019
MyDeveloperDay added inline comments.
================
Comment at: lib/Format/FormatToken.h:524
+ T = T->getPreviousNonComment();
+ return (T->Tok.is(tok::comma) && Tok.is(tok::identifier) &&
+ T->Next->Tok.is(tok::colon));
----------------
Manikishan wrote:
> MyDeveloperDay wrote:
> > do you think you might need
> >
> > (T && T->Tok.is(tok::comma)......
> >
> I have found a method `FieldDecl::isBitField() ` which check whether a current field is a BitField, But `FieldDecl` is not used anywhere in `lib/Format/` . I think it may not be related to Formatting and so I have to modify my declaration of `isBitield()` in `FormatToken.h`.
> Can I get suggestions whether my understanding is correct?
FieldDecl will be part of the AST tree, but clang-format doesn't use that (or it would need compiler arguments etc..)
Take a look at TokenAnnotator.cpp... (and try running clang-format with the -debug option), it may show you that the bitfield can be identified by the TT_BitFieldColon type rather than by a colon directly.
```
} else if (CurrentToken && CurrentToken->is(tok::numeric_constant)) {
Tok->Type = TT_BitFieldColon;
```
Repository:
rC Clang
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D63062/new/
https://reviews.llvm.org/D63062
More information about the cfe-commits
mailing list