[PATCH] D60362: [clang-format] [PR39719] clang-format converting object-like macro to function-like macro

MyDeveloperDay via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Apr 8 02:02:03 PDT 2019


MyDeveloperDay marked 2 inline comments as done.
MyDeveloperDay added inline comments.


================
Comment at: clang/lib/Format/TokenAnnotator.cpp:2467-2470
+  if (Line.InPPDirective && Right.is(tok::l_paren) &&
+      !Left.is(tok::identifier) && Left.Previous &&
+      Left.Previous->is(tok::identifier) && Left.Previous->Previous &&
+      Left.Previous->Previous->is(tok::hash))
----------------
klimek wrote:
> owenpan wrote:
> > I think it can be more precise and simplified to something like this:
> > ```
> >   if (Left.Previous && Left.Previous->is(tok::pp_define) &&
> >       Left.isNot(tok::identifier) && Right.is(tok::l_paren))
> > ```
> Why don't we have the same problem for identifier? Is that already solved and the problem is that this is a keyword redefinition?
> 
Yes the identifier seems to work ok, but when its a keyword redfinition the identifier is replaced with the token for the keyword i.e. tok::kw_true or tok::kw_false


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D60362/new/

https://reviews.llvm.org/D60362





More information about the llvm-commits mailing list