On Monday 25 June 2007 18:50, Robert P. J. Day wrote: > just for the fun of it, i tried doing a build with "C=1" and got a > pile of errors: > > ... > CHECK init/main.c > include/linux/spinlock_api_smp.h:22:47: error: undefined identifier 'lock' > include/linux/spinlock_api_smp.h:22:47: error: bad constant expression > include/linux/spinlock_api_smp.h:24:8: error: undefined identifier 'lock' > include/linux/spinlock_api_smp.h:24:8: error: bad constant expression > ... > What says make C=1 V=1 ? Do you have sparse installed? > which corresponds to this: > > void __lockfunc _spin_lock(spinlock_t *lock) __acquires(lock); > void __lockfunc _spin_lock_nested(spinlock_t *lock, int subclass) > __acquires(lock); > > it's those "__acquires(lock)" attributes that are causing the problem, > which are defined thusly when doing this kind of check: > > # define __acquires(x) __attribute__((context(x,0,1))) > # define __releases(x) __attribute__((context(x,1,0))) > > ok, so ... can someone explain what's happening here as i don't know > squat about this particular gcc attribute. thanks. > It's not a gcc attribute, but a sparse one. tavi -- To unsubscribe from this list: send an email with "unsubscribe kernelnewbies" to ecartis@xxxxxxxxxxxx Please read the FAQ at http://kernelnewbies.org/FAQ