Nel senso che non mi dava errori ma la funzione non svolgeva il suo compito. Poi ho risolto semplicemente creando una funzione che scambiasse strutture, invocandola opportunamente nella funzione che mi doveva ordinare il tutto alfabeticamente seguendo come chiave d'ordinamento il cognome e ora funziona!