A Fortress programozási nyelv

Kivételkezelés

A kivételek olyan értékek, amiket el lehet dobni a throw kifejezéssel, és el lehet kapni a try blokk catch ágában.
Amikor egy ilyen throw utasítás kiértékelődik, "throw e" példáúl, az e alkifejezés kiértékelődik egy kivétellé. "e" statikus típusának az Exception altípusának kell lennie. Ekkor a throw blokk a vezérlést átadja az őt dinamikus tárolóblokkjának (koncentrikusan), mindaddig amíg vagy olyan try blokkba ér, ami olyen catch ágat tartalmaz, ami illeszkedik "e" -re, vagy eléri a legkülső blokkot.
Ha a try blokk tartalmaz finally ágat is, akkor az még azelött kiértékelődik, hogy a vezérlés a fentiek alapján átadódna.
Exception alapdeklarációk:
trait Exception comprises { CheckedException, UncheckedException } end trait CheckedException extends Exception exluced UncheckedException end trait UncheckedExpression extends Exception exludes CheckedException end
Minden típus vagy a CheckedException, vagy az UncheckedException típus altípusa.
(A nyelvspecifikáció nem tér ki arra, hogy miben különbözik a két kivételtípus).