## Tcl9.0.3/Tk9.0.3 Documentation > Tcl Commands > error

### Tcl/Tk Applications | Tcl Commands | Tk Commands | [incr Tcl] Package Commands | SQLite3 Package Commands | TDBC Package Commands | tdbc::mysql Package Commands | tdbc::odbc Package Commands | tdbc::postgres Package Commands | tdbc::sqlite3 Package Commands | Thread Package Commands | Tcl C API | Tk C API | [incr Tcl] Package C API | TDBC Package C API

### NAME

error — 不都合の発生 Generate an error

### 構文 SYNOPSIS

error message ?info? ?code?

### 説明 DESCRIPTION

TCL_ERROR 符号を返し､これにより､命令の解釈実行の手繰り戻しを惹き起こす｡伝達文 message は､何が悪くしたかを示す為に応用譜に返される文字列である｡ 　　　 Returns a TCL_ERROR code, which causes command interpretation to be unwound. Message is a string that is returned to the application to indicate what went wrong.

解釈実行機能の -errorinfo 指定項目は不都合が生じたときに､進行していた事柄を追跡棚に累積する為に使用される; 入れ子になった命令を手繰り戻すに連れ､Tcl 解釈実行機能は､情報を return 命令の -errorinfo 指定項目に追加する｡もし､ info 引数があると､return 命令の -errorinfo 指定項目の初期化に使われ､そして､最初に手繰り寄せられた情報は､Tcl解釈実行機能により追加はされない｡言い換えると､error 命令を含む命令は追跡の棚には現れない; その中にある場所が info になる｡歴史的には､この性質は catch 命令との組合せで有用であった: もし､捕らえられた不都合が巧く扱えない場合にも､ info は､不都合が生じた基の点を反映している追跡棚に帰る為に使うことができる: 　　　　 The -errorinfo return option of an interpreter is used to accumulate a stack trace of what was in progress when an error occurred; as nested commands unwind, the Tcl interpreter adds information to the -errorinfo return option. If the info argument is present, it is used to initialize the -errorinfo return options and the first increment of unwind information will not be added by the Tcl interpreter. In other words, the command containing the error command will not appear in the stack trace; in its place will be info. Historically, this feature had been most useful in conjunction with the catch command: if a caught error cannot be handled successfully, info can be used to return a stack trace reflecting the original point of occurrence of the error:

    catch {...} errMsg
    set savedInfo $::errorInfo
    	...
    error $errMsg $savedInfo

Tcl 8.5 以降の版で動作させる時は､代りに､次の命令符号を使うべきである: 　　　 When working with Tcl 8.5 or later, the following code should be used instead:

    catch {...} errMsg options
    	...
    return -options $options $errMsg

もし､code 引数があると､その値は､ return 命令の -errorcode 指定項目の中に保存される｡ return 命令の -errorcode指定項目は､この様な情報が利用できる場合､不都合の機械可読の記述を保持することを意図している; この指定項目の値に関する適切な形式の情報については取扱説明書の return の頁を参照されたい｡ 　　　 If the code argument is present, then its value is stored in the -errorcode return option. The -errorcode return option is intended to hold a machine-readable description of the error in cases where such information is available; see the return manual page for information on the proper format for this option's value.

### 用例 EXAMPLE

もし､基本的な算術演算が誤動作すると不都合を発生する:　 Generate an error if a basic mathematical operation fails:

    if {1+2 != 3} {
        error "something is very wrong with addition"
    }

### SEE ALSO

catch, return

### KEYWORDS

error, exception
Copyright © 1993 The Regents of the University of California.
Copyright © 1994-1996 Sun Microsystems, Inc.