I prefer having `__attribute__` *after* the identifier, i.e.:

```c
void *args __attribute__((unused))
```

Two reasons:
* This way, the "unused" attribute is left-associative, like C keywords such as `const`.
* The scope of `__attribute__` depends on where is it specified. If specified accordingly, it may actually apply to multiple arguments / declarations. By putting it at the very end, you can make it quite explicit that that's *not* the intention.