From ed2f9793fae7d1c018e3de463617339c68faa3c0 Mon Sep 17 00:00:00 2001 From: Kyle Gunger Date: Sun, 10 Apr 2022 17:30:30 -0400 Subject: A few fixes + Fix an error with if statements inside loops + Fix a parser bug with boolean operators ~ Change libtnsl stub to return integers when reading a file ~ Change libtnsl stub to return -1 on EOF or file read error --- src/texec/libtnsl.go | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'src/texec/libtnsl.go') diff --git a/src/texec/libtnsl.go b/src/texec/libtnsl.go index 581d15e..bb0ce7d 100644 --- a/src/texec/libtnsl.go +++ b/src/texec/libtnsl.go @@ -176,8 +176,11 @@ func tfile_close(file TVariable) { // tnsl.io.File.read func tfile_read(file TVariable) TVariable { b := []byte{1} - (file.Data).(*os.File).Read(b) - return TVariable{tCharp, b[0]} + _, err := (file.Data).(*os.File).Read(b) + if err != nil { + return TVariable{tInt, -1} + } + return TVariable{tInt, int(b[0])} } // tnsl.io.File.write -- cgit v1.2.3