Skip to content
This repository has been archived by the owner on Jun 9, 2018. It is now read-only.

Commit

Permalink
Browse files Browse the repository at this point in the history
refactor without printerr
  • Loading branch information
fperrad committed Jun 14, 2010
1 parent ba9e0b6 commit 8725e93
Show file tree
Hide file tree
Showing 8 changed files with 42 additions and 21 deletions.
14 changes: 9 additions & 5 deletions lua.pir
Expand Up @@ -476,17 +476,21 @@ show version information.
.sub 'l_message' :anon
.param string pname
.param string msg
.local pmc stderr
stderr = getstderr
unless pname goto L1
printerr pname
printerr ': '
print stderr, pname
print stderr, ': '
L1:
printerr msg
printerr "\n"
print stderr, msg
print stderr, "\n"
.end


.sub 'print_usage' :anon
printerr <<'USAGE'
.local pmc stderr
stderr = getstderr
print stderr, <<'USAGE'
usage: lua.pbc [options] [script [args]].
Available options are:
-e stat execute string 'stat'
Expand Down
6 changes: 4 additions & 2 deletions lua/POSTGrammar.tg
Expand Up @@ -106,8 +106,10 @@ PIRCODE
main."setfenv"(env)
($I0, $P0) = docall(main, vararg :flat)
unless $I0 goto L3
printerr "luap: "
printerr $P0
.local pmc stderr
stderr = getstderr
print stderr, "luap: "
print stderr, $P0
L3:
PIRCODE
post.'outer'(start)
Expand Down
6 changes: 4 additions & 2 deletions lua/lib/luabytecode.pir
Expand Up @@ -82,8 +82,10 @@
main.'setfenv'(env)
($I0, $P0) = docall(main, vararg :flat)
unless $I0 goto L1
printerr 'luac2pir: '
printerr $P0
.local pmc stderr
stderr = getstderr
print stderr, 'luac2pir: '
print stderr, $P0
L1:
.end

Expand Down
13 changes: 7 additions & 6 deletions lua/lib/luadebug.pir
Expand Up @@ -80,19 +80,20 @@ function, and so have no direct access to local variables.
.sub 'debug'
.param pmc extra :slurpy
.local string buffer
.local pmc stdin
.local pmc stdin, stderr
$P0 = getinterp
stdin = $P0.'stdhandle'(.PIO_STDIN_FILENO)
stderr = $P0.'stdhandle'(.PIO_STDERR_FILENO)
L1:
printerr 'lua_debug> '
print stderr, 'lua_debug> '
buffer = readline stdin
if buffer == '' goto L2
$I0 = index buffer, "cont"
if $I0 == 0 goto L2
($P0, $S0) = lua_loadbuffer(buffer, '=(debug command)')
unless null $P0 goto L3
printerr $S0
printerr "\n"
print stderr, $S0
print stderr, "\n"
goto L1
L3:
push_eh _handler
Expand All @@ -104,8 +105,8 @@ function, and so have no direct access to local variables.
.local string msg
.get_results (e)
msg = e
printerr msg
printerr "\n"
print stderr, msg
print stderr, "\n"
goto L1
L2:
.end
Expand Down
4 changes: 3 additions & 1 deletion lua/lib/luaperl.pir
Expand Up @@ -123,7 +123,9 @@ It's a temporary work. Waiting for the real PIR compiler/interpreter.
.get_results (e)
$P0 = new 'FileHandle'
$S0 = $P0.'readall'(out)
printerr $S0
.local pmc stderr
stderr = getstderr
print stderr, $S0
unlink(out) # cleaning up the temporary file
rethrow e
.end
Expand Down
8 changes: 6 additions & 2 deletions lua/lua51.pir
Expand Up @@ -109,7 +109,9 @@ used in F<languages/lua/src/PASTGrammar.tg>
.param string msg
$S0 = "ERROR_INTERNAL (PAST): " . msg
$S0 .= "\n"
printerr $S0
.local pmc stderr
stderr = getstderr
print stderr, $S0
exit 1
.end

Expand All @@ -126,7 +128,9 @@ used in F<languages/lua/src/POSTGrammar.tg>
.param string msg
$S0 = "ERROR_INTERNAL (POST): " . msg
$S0 .= "\n"
printerr $S0
.local pmc stderr
stderr = getstderr
print stderr, $S0
exit 1
.end

Expand Down
4 changes: 3 additions & 1 deletion luac2pir.pir
Expand Up @@ -40,7 +40,9 @@ luad
pop_eh
end
USAGE:
printerr "Usage: parrot luac2pir.pir filename\n"
.local pmc stderr
stderr = getstderr
print stderr, "Usage: parrot luac2pir.pir filename\n"
exit -1
_handler:
.local pmc e
Expand Down
8 changes: 6 additions & 2 deletions luad.pir
Expand Up @@ -47,7 +47,9 @@ L<http://luaforge.net/projects/chunkspy/>
pop_eh
end
USAGE:
printerr "Usage: parrot luad.pir filename\n"
.local pmc stderr
stderr = getstderr
print stderr, "Usage: parrot luad.pir filename\n"
exit -1
_handler:
.local pmc e
Expand All @@ -73,7 +75,9 @@ L<http://luaforge.net/projects/chunkspy/>
$S1 = err
$S0 .= $S1
$S0 .= ")\n"
printerr $S0
.local pmc stderr
stderr = getstderr
print stderr, $S0
.return ('')
.end
Expand Down

0 comments on commit 8725e93

Please sign in to comment.