Node:Error Reporting, Next:, Previous:Exceptions, Up:Control Mechanisms

26.8 Procedures for Signaling Errors

Guile provides a set of convenience procedures for signaling error conditions that are implemented on top of the exception primitives just described.

error msg args ... Scheme Procedure
Raise an error with key misc-error and a message constructed by displaying msg and writing args.

scm-error key subr message args data Scheme Procedure
scm_error_scm (key, subr, message, args, data) C Function
Raise an error with key key. subr can be a string naming the procedure associated with the error, or #f. message is the error message string, possibly containing ~S and ~A escapes. When an error is reported, these are replaced by formatting the corresponding members of args: ~A (was %s in older versions of Guile) formats using display and ~S (was %S) formats using write. data is a list or #f depending on key: if key is system-error then it should be a list containing the Unix errno value; If key is signal then it should be a list containing the Unix signal number; otherwise it will usually be #f.

strerror err Scheme Procedure
scm_strerror (err) C Function
Return the Unix error message corresponding to err, which must be an integer value.

false-if-exception expr syntax
Returns the result of evaluating its argument; however if an exception occurs then #f is returned instead.