[PATCH] D131978: [clang-format] Concepts: allow identifiers after negation

Emilia Dreamer via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Wed Aug 17 11:34:44 PDT 2022


rymiel added a comment.

It seems that even with this patch, there is seemingly weird formatting with the negation in requires clauses, such as:

  template <typename T>
    requires !F<T>
             int bar(T t);

This is because the "fake parens" of the unary expression opened is never closed by the special case clean-up made for requires clauses
However, it turns out this isn't even valid syntax, as it requires parentheses for disambiguation. Adding those brings back correct indentation

  template <typename T>
    requires(!F<T>)
  int bar(T t);

Is it okay to ignore this case, as it wouldn't even compile?


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D131978



More information about the cfe-commits mailing list