#define Lock Qnode* typedef struct Qnode Qnode; struct Qnode { Qnode *next; int locked; }; #define lock(xyz) mcslock(xyz) #define unlock(xyz) mcsunlock(xyz) #define canlock(xyz) mcscanlock(xyz) extern void lock(Lock*); extern void unlock(Lock*); extern int canlock(Lock*);