[neomutt-devel] Unused parameters
rich at flatcap.org
Thu Nov 23 14:17:04 CET 2017
We've eliminated quite a few unused parameters in function prototypes,
but there are many more left. Mostly they're where we've defined an
API, such as the format strings.
gcc and clang provide: `__attribute__((__unused__))`
How do people feel about marking these unused parameters?
#define UNUSED(x) UNUSED_ ## x __attribute__((__unused__))
This macro has two properties:
- The attribute tells the compiler that the variable is unused
- It renames the variable to avoid it *being* used
static const char *cb_format_str(char *dest, size_t destlen, size_t UNUSED(col),
int UNUSED(cols), char op, const char *src,
const char *UNUSED(prefix),
const char *ifstring, const char *elsestring,
unsigned long data, enum FormatFlag flags)
This *does* add visual clutter to the code, but it can be hidden with a
vim conceal. This script hides the `UNUSED()` part completely, but adds
a red dagger (†) as a suffix.
syntax region U_surround matchgroup=U_variable start="UNUSED(" skip="\i\+" end=")" concealends cchar=†
highlight U_surround ctermfg=none guifg=NONE
highlight U_variable ctermfg=red guifg=red
What do you think?
Rich / FlatCap
-------------- next part --------------
A non-text attachment was scrubbed...
Size: 833 bytes
Desc: not available
More information about the neomutt-devel