> # Default (interactive)
> cat_line(default_interactive)
Error: Error message
Run `rlang::last_error()` to see where the error occurred.
Execution halted

> # Default (non-interactive)
> cat_line(default_non_interactive)
Error: Error message
Backtrace:
    x
 1. \-global::f()
 2.   +-base::tryCatch(g())
 3.   | \-base:::tryCatchList(expr, classes, parentenv, handlers)
 4.   \-global::g()
 5.     \-global::h()
Execution halted

> # Reminder
> cat_line(reminder)
Error: Error message
Execution halted

> # Branch
> cat_line(branch)
Error: Error message
Backtrace:
 1. global::f()
 4. global::g()
 5. global::h()
Execution halted

> # Collapse
> cat_line(collapse)
Error: Error message
Backtrace:
    x
 1. \-global::f()
 2.   +-[ base::tryCatch(...) ] with 1 more call
 4.   \-global::g()
 5.     \-global::h()
Execution halted

> # Full
> cat_line(full)
Error: Error message
Backtrace:
    x
 1. \-global::f()
 2.   +-base::tryCatch(g())
 3.   | \-base:::tryCatchList(expr, classes, parentenv, handlers)
 4.   \-global::g()
 5.     \-global::h()
Execution halted

> # Rethrown (interactive)
> cat_line(rethrown_interactive)
Error: Error message
Run `rlang::last_error()` to see where the error occurred.
Execution halted

> # Rethrown (non-interactive)
> cat_line(rethrown_non_interactive)
Error: Error message
Backtrace:
    x
 1. +-base::tryCatch(f(), error = function(cnd) rlang::cnd_signal(cnd))
 2. | \-base:::tryCatchList(expr, classes, parentenv, handlers)
 3. |   \-base:::tryCatchOne(expr, names, parentenv, handlers[[1L]])
 4. |     \-base:::doTryCatch(return(expr), name, parentenv, handler)
 5. \-global::f()
 6.   +-base::tryCatch(g())
 7.   | \-base:::tryCatchList(expr, classes, parentenv, handlers)
 8.   \-global::g()
 9.     \-global::h()
Execution halted

