本文转载自: FPGA打工人
注:本文由作者授权转发,如需转载请联系作者本人
tcl脚本提供了错误和异常处理机制,error可以看做是异常的特例,毕竟导致脚本被终止,除了error还有break、continue、return等。下面是与异常有关的tcl命令。
catch命令:
catch command ?varName?
把command作为tcl脚本求值,返回一个整型值表明command结束的状态。假如设置了varName,则varName用于保存command产生的错误消息。
error命令:
error message ?info? ?code?
产生一个错误,并把message作为错误信息。假如设置了code,将被存储到全局变量errorCode中。
return命令:
return -code code ?-errorinfo info? ?-errorcode errorCode? ?string?
使特定过程返回一个异常。code指明异常的类型,必须是ok,error,return,break,continue或者是一个整数。-errorinfo选项用于指定全局变量errorInfo 的初始值,-errorcode用于指定全局变量errorCode的初始值。string给出return的返回值或者是相关的错误信息,其默认值为空。
有时可能需要查看一个错误的详细信息,除了命令返回值中的错误信息外,还可以查看全局变量errorInfo和errorCode的值。