Hi,
the reason is the length of the symbol. CINT does not yet allocate all its buffers dynamically, so you get a buffer overflow. But that symbol is a big one; nm says: [code]std::_Rb_tree<int, std::pair<int const, std::map<int, std::map<int, std::map<int, std::map<int, int, std::less, std::allocator<std::pair
<int const, int> > >, std::less, std::allocator<std::pair<int const, std::map<int, int, std::less, std::allocator<std::pair<int const, int> > > > > >,
std::less, std::allocator<std::pair<int const, std::map<int, std::map<int, int, std::less, std::allocator<std::pair<int const, int> > >, std::less, std::allocator<std::pair<int const, std::map<int, int, std::less, std::allocator<std::pair<int const, int> > > > > > > > >, std::less, std::alloca
tor<std::pair<int const, std::map<int, std::map<int, std::map<int, int, std::less, std::allocator<std::pair<int const, int> > >, std::less, std::alloc
ator<std::pair<int const, std::map<int, int, std::less, std::allocator<std::pair<int const, int> > > > > >, std::less, std::allocator<std::pair<int co
nst, std::map<int, std::map<int, int, std::less, std::allocator<std::pair<int const, int> > >, std::less, std::allocator<std::pair<int const, std::map
<int, int, std::less, std::allocator<std::pair<int const, int> > > > > > > > > > > > >, std::_Select1st<std::pair<int const, std::map<int, std::map<int, st
d::map<int, std::map<int, int, std::less, std::allocator<std::pair<int const, int> > >, std::less, std::allocator<std::pair<int const, std::map<int, i
nt, std::less, std::allocator<std::pair<int const, int> > > > > >, std::less, std::allocator<std::pair<int const, std::map<int, std::map<int, int, std
::less, std::allocator<std::pair<int const, int> > >, std::less, std::allocator<std::pair<int const, std::map<int, int, std::less, std::allocator
<std::pair<int const, int> > > > > > > > >, std::less, std::allocator<std::pair<int const, std::map<int, std::map<int, std::map<int, int, std::less, s
td::allocator<std::pair<int const, int> > >, std::less, std::allocator<std::pair<int const, std::map<int, int, std::less, std::allocator<std::pair<int
const, int> > > > > >, std::less, std::allocator<std::pair<int const, std::map<int, std::map<int, int, std::less, std::allocator<std::pair<int const,
int> > >, std::less, std::allocator<std::pair<int const, std::map<int, int, std::less, std::allocator<std::pair<int const, int> > > > > > > > > > > >
, std::less, std::allocator<std::pair<int const, std::map<int, std::map<int, std::map<int, std::map<int, int, std::less, std::allocator<std::pair<
int const, int> > >, std::less, std::allocator<std::pair<int const, std::map<int, int, std::less, std::allocator<std::pair<int const, int> > > > > >,
std::less, std::allocator<std::pair<int const, std::map<int, std::map<int, int, std::less, std::allocator<std::pair<int const, int> > >, std::less<int
, std::allocator<std::pair<int const, std::map<int, int, std::less, std::allocator<std::pair<int const, int> > > > > > > > >, std::less, std::allocat
or<std::pair<int const, std::map<int, std::map<int, std::map<int, int, std::less, std::allocator<std::pair<int const, int> > >, std::less, std::alloca
tor<std::pair<int const, std::map<int, int, std::less, std::allocator<std::pair<int const, int> > > > > >, std::less, std::allocator<std::pair<int con
st, std::map<int, std::map<int, int, std::less, std::allocator<std::pair<int const, int> > >, std::less, std::allocator<std::pair<int const, std::map<
int, int, std::less, std::allocator<std::pair<int const, int> > > > > > > > > > > > > > >::_Rb_tree(std::less const&, std::allocator<std::pair<int con
st, std::map<int, std::map<int, std::map<int, std::map<int, int, std::less, std::allocator<std::pair<int const, int> > >, std::less, std::allocator<st
d::pair<int const, std::map<int, int, std::less, std::allocator<std::pair<int const, int> > > > > >, std::less, std::allocator<std::pair<int const, st
d::map<int, std::map<int, int, std::less, std::allocator<std::pair<int const, int> > >, std::less, std::allocator<std::pair<int const, std::map<int, i
nt, std::less, std::allocator<std::pair<int const, int> > > > > > > > >, std::less, std::allocator<std::pair<int const, std::map<int, std::map<int, st
d::map<int, int, std::less, std::allocator<std::pair<int const, int> > >, std::less, std::allocator<std::pair<int const, std::map<int, int, std::less<
int>, std::allocator<std::pair<int const, int> > > > > >, std::less, std::allocator<std::pair<int const, std::map<int, std::map<int, int, std::less, s
td::allocator<std::pair<int const, int> > >, std::less, std::allocator<std::pair<int const, std::map<int, int, std::less, std::allocator<std::pair<int
const, int> > > > > > > > > > > > > > const&)[/code] which is a challenge for any parser, even for human eyes
Now the solution is simple: instead of typedef std::map<ID_field_t, m_cellLevel_t> m_modLevel_t;
you “cut” the names by introducing a dummy class:
class m_modLevel_t: public std::map<ID_field_t, m_cellLevel_t> {};
Cheers, Axel.