Uwe Kleine-KÃnig <u.kleine-koenig@xxxxxxxxxxxxxx> writes: > Ah, found something about unused being a type attribute. My gcc docs (i.e. > gcc-4.3.info) say: > > `unused' > When attached to a type (including a `union' or a `struct'), this > attribute means that variables of that type are meant to appear > possibly unused. GCC will not produce a warning for any variables > of that type, even if the variable appears to do nothing. This is > often the case with lock or thread classes, which are usually > defined and then not referenced, but contain constructors and > destructors that have nontrivial bookkeeping functions. > > This doesn't help me on my original problem though. As I recall, your original problem was that an attribute that you wanted to be attached to the declaration was instead being attached to the type. The answer is going to have to be to move the attribute clause. I don't see what other alternative there could be. Ian