On Mon, 16 Jul 2018 19:56:00 +0200 Toke Høiland-Jørgensen <[email protected]> wrote:
> Stephen Hemminger <[email protected]> writes: > > > On Mon, 16 Jul 2018 18:39:26 +0200 > > Toke Høiland-Jørgensen <[email protected]> wrote: > > > >> +#define PRINT_TSTAT(name, attr, fmts, val) do { \ > >> + if (GET_TSTAT(0, attr)) { \ > >> + fprintf(f, name); \ > >> + for (i = 0; i < num_tins; i++) \ > >> + fprintf(f, " %12" fmts, val); \ > >> + fprintf(f, "\n"); \ > >> + } \ > >> + } while (0) > > > > Couldn't this be a function? > > Guess so? But keeping it as a macro keeps it closer to where it is > defined, and keeps the macro definitions together. IMO this is more > readable than splitting things up... > > -Toke Personal preference. I hate macros, leftover from hours of debugging bad expansions. _______________________________________________ Cake mailing list [email protected] https://lists.bufferbloat.net/listinfo/cake
