Hi Miguel, On Tue, 4 Jun 2019, Miguel Ojeda wrote: > The ForEachMacros list can reasonably be generated grepping > the C source code for macros with 'for_each' in their name. > > Taken almost verbatim from the .clang-format file in the Linux kernel. > > Signed-off-by: Miguel Ojeda <miguel.ojeda.sandonis@xxxxxxxxx> > --- > We wrote this for the Linux kernel a while ago, and it has been working > fine there, so I thought it would be nice to use the same approach here. Makes sense to me! Thanks, Johannes > .clang-format | 17 +++++++++++++++-- > 1 file changed, 15 insertions(+), 2 deletions(-) > > diff --git a/.clang-format b/.clang-format > index 41d4cd23fd..c592dda681 100644 > --- a/.clang-format > +++ b/.clang-format > @@ -148,8 +148,21 @@ SpacesInSquareBrackets: false > Cpp11BracedListStyle: false > > # A list of macros that should be interpreted as foreach loops instead of as > -# function calls. > -ForEachMacros: ['for_each_string_list_item', 'for_each_wanted_builtin', 'for_each_builtin', 'for_each_ut'] > +# function calls. Taken from: > +# git grep -h '^#define [^[:space:]]*for_each[^[:space:]]*(' \ > +# | sed "s,^#define \([^[:space:]]*for_each[^[:space:]]*\)(.*$, - '\1'," \ > +# | sort | uniq > +ForEachMacros: > + - 'for_each_abbrev' > + - 'for_each_builtin' > + - 'for_each_string_list_item' > + - 'for_each_ut' > + - 'for_each_wanted_builtin' > + - 'list_for_each' > + - 'list_for_each_dir' > + - 'list_for_each_prev' > + - 'list_for_each_prev_safe' > + - 'list_for_each_safe' > > # The maximum number of consecutive empty lines to keep. > MaxEmptyLinesToKeep: 1 > -- > 2.17.1 > >