[Fernando Pablo Lopez-Lezcano]
 Using 0.1.1 (tried on redhat 9 and fedora core 1):
g++ -Wall -O6 -ffast-math -funroll-loops -march=`uname -m` -mcpu=`uname
-m`  -I/usr/local/include -DVERSION=\"0.1.1\" -I/usr/local/include -c
Cabinet.cc
Descriptor.h: In member function `void Descriptor<T>::autogen() [with T
=
   Cabinet]':
Cabinet.cc:168:   instantiated from here
Descriptor.h:36: type `Cabinet' is not a base type for type `
   Descriptor<Cabinet>'
make: *** [Cabinet.o] Error 1 
drat. what does
$ g++ --version
say, please?
i'm using gcc 2.95.4, and afraid it's a compiler issue. unfortunately
i don't seem to have a more recent version at my disposal. 
i dug up a copy of g++-3.0 and it does fail with a different error,
but in the same line.
can you try the attached patch please?
tim