Fatti
Il 11 aprile 1990, [A.] (convenuto) ha firmato un contratto di garanzia solidale autenticato pubblicamente, in cui si è impegnato nei confronti della Banca [X.] (attrice) a rispondere solidalmente per i crediti dell'attrice nei confronti della Holding [Z.] fino a un importo massimo di CHF 25 milioni. Il contratto di garanzia stabiliva che si dovesse applicare il diritto svizzero e che eventuali controversie dovessero essere giudicate dai tribunali del Cantone di Zurigo.
Con azione del 1° luglio 1998, l'attrice ha citato il convenuto davanti al Tribunale distrettuale di Zurigo per CHF 1 milione oltre agli interessi, sulla base del contratto di garanzia. Il convenuto ha chiesto il rigetto dell'azione per difetto di competenza dei tribunali di Zurigo.
Legge
Il Tribunale federale ha confermato la competenza dei tribunali di Zurigo. Da un lato, l'accordo sulla competenza giurisdizionale nel contratto di garanzia deve essere considerato come un accordo processuale autonomo, la cui validità deve essere esaminata indipendentemente dalla validità del contratto principale. D'altro canto, il luogo di adempimento per le prestazioni derivanti da un contratto di garanzia è, secondo i principi generali del CO,…