X-Git-Url: https://thelambdalab.xyz/gitweb/index.cgi?p=forth.jl.git;a=blobdiff_plain;f=src%2Fforth.jl;h=3882a53b25e48816967e9299bf6f0dc64ea2ac8b;hp=4c81dc35b59f305078a7a2a08f4e95927b640b8b;hb=2cda7c0f280f83e34d3404817224d8bc70812b3e;hpb=8723639e0adb6b6a008403937fc3b2fef26c16c1 diff --git a/src/forth.jl b/src/forth.jl index 4c81dc3..3882a53 100644 --- a/src/forth.jl +++ b/src/forth.jl @@ -677,6 +677,10 @@ READ_LINE_CFA = defPrimWord("READ-LINE", () -> begin maxSize = popPS() addr = popPS() + if !(fid in keys(openFiles)) + error(string("Invalid FID ", fid, ".")) + end + fh = openFiles[fid] line = readline(fh, chomp=false) @@ -1336,6 +1340,7 @@ function run(fileName=nothing; initialize=true) jmp = callPrim(jmp) catch ex + println(string("Error in primitive '", getPrimName(jmp), "' at address ", jmp)) showerror(STDOUT, ex) println()