Prime cose che mi viene in mente: chiami per caso metodi NON const della classe Account nella funzione inserisciGruppo (se ci usi dentro this, sono dichiarati non const al 100%)?
no, nella funzione inserisciGruppo vengono chiamati metodi non const, ma della classe Gruppo
Hai dichiarato la variabile che passi alla funzione come const Account*?
no, è dichiarata come Account* tmp; poi in uno switch c'è la new
Nota che per passare un argomento per reference, senza quindi richiamare il copy-constructor, il const non è necessario. E c'è differenza tra una const reference ed una reference "normale", che mi sa che è la cosa che ti ha gabbato.
vero, me la sono riguardata, il const serve per permettere di passare oggetti anonimi come reference, l'avevo lasciato per quello. L'ho tolto e funziona, grazie

.
Però non capisco ancora perché prima non funzionasse, in quanto i 2 parametri passati erano due oggetti indirizzabili, non oggetti anonimi.
Secondariamente, che compilatore usi? Mi sa tanto di un GCC olderrimo...
come ide uso netbeans, il compilatore è il g++ standard della macchina