Having a similar problem here: std::set<Person>* _family ... set<Person>::reverse_iterator iter = _family->rbegin(); ++iter; > iter->setName(NULL); error: passing `const Person' as `this' argument of `void Person::setName(char*)' discards qualifiers Why is the compiler thinking *iter is a "const Person"? _family is not const and I'm not using a const_reverse_iterator, although there are some const_iterator in other parts of the code. For now I'll just cast the const Person to a Person: ((Person*)(&(*iter)))->setName(NULL); But I'd like to know how to fix this. Ricardo, Brazil. _______________________________________________________ Yahoo! Acesso Grátis: Internet rápida e grátis. Instale o discador agora! http://br.acesso.yahoo.com/