Derzeit gehört die Exception-Spek nicht zum C++ Standard. Das hat zur Folge, dass manche Compiler zwar damit zurecht kommen, die Spek aber einfach ignorieren (z.B. Microsoft Visual C++) oder andere, die das anscheinend gar nicht unterstützen, sowie deiner z.B.
Exception-Spezifikation gehört natürlich zum Standard! Sie ist aber recht sinnlos, höchsten thow() ist zu gebrauchen, als Garantie für das Nichtwerfen von Exceptions. int funktion(int) throw(Error); ist ok, wie lautet die Fehlermeldung? Gibt es eine Klasse/Struktur namens Error? -- Wer früher stirbt ist länger tot.
Soweit ich das verstanden habe, bedeutet das, dass die Funktion eine Exception vom Typ Error auslösen kann. Wozu brauchst Du da jetzt die Fehlermeldung? -- Konfuzius says: "A man who goes to bed with an itchy asshole is a man who wakes up with stinky finger!"
(un)wissender will von dir wissen was fuer einen Compilerfehler du bekommst. -- All parts should go together without forcing. ... By all means, do not use a hammer. (IBM maintenance manual, 1925)