Semplicemente non si può fare.
Il tipo di ritorno NON FA PARTE della firma della funzione, quindi per il compilatore c'è una funzione dichiarata due volte.
L'override si ha quando una classe riscrive una funzione con la stessa firma di una funzione presente nelle classi base.
L'overload si ha quando si cambia la firma della funzione (mantenendo lo stesso nome e cambiando l'ordine dei parametri [se di tipo diverso] o il numero degli stessi).