ArgumentList *ArgumentList::deepCopy() const { ArgumentList *argList = new ArgumentList; argList->setAutoDelete(TRUE); QListIterator<Argument> ali(*this); Argument *a; for (;(a=ali.current());++ali) { argList->append(new Argument(*a)); } argList->constSpecifier = constSpecifier; argList->volatileSpecifier = volatileSpecifier; argList->pureSpecifier = pureSpecifier; argList->trailingReturnType = trailingReturnType; argList->isDeleted = isDeleted; return argList; }