on master help sign in
Merge pull request #37 from ALANVF/patch-1

Display error message when running a Tcl file

commita1772139d1eca9f79c0734c1d1fae74df59aa6d0 authorMason Clayton <masongclayton@gmail.com> dateMon 11 Nov 2019, 16:17 (7 years ago) parent170c83df83d750
2 files changed+13−1
languages/tcl/main.go+6−1 tests/tcl/invalid_command.exp+7
languages/tcl/main.go+6−1
@@ -67,7 +67,12 @@ func (p *Tcl) EvalFile(file string, args []string) {
6767 cfile := C.CString(file)
6868 defer C.free(unsafe.Pointer(cfile))
6969
70− C.Tcl_EvalFile(p.interp, cfile)
70+ status := C.Tcl_EvalFile(p.interp, cfile)
71+
72+ if status != C.TCL_OK {
73+ errstr := C.GoString(C.Tcl_GetStringResult(p.interp))
74+ fmt.Fprintf(os.Stderr, "error: %s\n", errstr)
75+ }
7176}
7277
7378func (p *Tcl) Eval(code string) {
tests/tcl/invalid_command.expnew file+7
@@ -0,0 +1,7 @@
1+#!/usr/bin/expect -f
2+
3+set timeout -1
4+spawn ./prybar-tcl -q -i ./test-files/hi_julia.jl
5+match_max 100000
6+
7+expect -exact "error: invalid command name \"my_number\"\r"