The following code incorrectly uses <! in a fn body within go. This should usually lead to a corresponding AssertionError but if there is a catch clause which catches Exception, this error is silently swallowed and the execution goes into an infinite loop.
This only happens when there are (catch ...) clauses for any exception types which aren't in the inheritance hierarchy of AssertionError, e.g. it works fine with (catch Error ...) but also fails with (catch RuntimeException ...).