Author: leo
Date: Sat Jul 30 08:31:19 2005
New Revision: 8740
Modified:
branches/leo-ctx5/CREDITS
branches/leo-ctx5/README
branches/leo-ctx5/io/io.c
branches/leo-ctx5/languages/tcl/t/tcl_pir_compiler.t
branches/leo-ctx5/ops/cmp.ops
branches/leo-ctx5/t/perl/Parrot_Docs.t
Log:
merge -r8727:8739 from trunk
Modified: branches/leo-ctx5/CREDITS
==============================================================================
--- branches/leo-ctx5/CREDITS (original)
+++ branches/leo-ctx5/CREDITS Sat Jul 30 08:31:19 2005
@@ -350,7 +350,8 @@ N: Vladimir Lipsky
D: Win32, IO fixes
N: Will Coleda
-D: Tcl language and misc fixes
+E: [EMAIL PROTECTED]
+D: Tcl language (partcl) and misc fixes
N: OOLLEY kj
D: Miscellaneous cleanup and PDD07-conformance
Modified: branches/leo-ctx5/README
==============================================================================
--- branches/leo-ctx5/README (original)
+++ branches/leo-ctx5/README Sat Jul 30 08:31:19 2005
@@ -93,8 +93,8 @@ You can run the full test suite with
make fulltest
-Note: due to string code changes some of the string tests fail with
-"make testr", which is part of "make fulltest".
+Note: PLATFORMS contains notes about whether test failures are expected
+on your system.
On some systems you can install parrot:
@@ -147,7 +147,7 @@ The following web sites have all the Par
http://dev.perl.org/perl6/
http://bugs6.perl.org/
http://pugscode.org/
-
+ http://www.poniecode.org/
Have fun,
The Parrot Team.
Modified: branches/leo-ctx5/io/io.c
==============================================================================
--- branches/leo-ctx5/io/io.c (original)
+++ branches/leo-ctx5/io/io.c Sat Jul 30 08:31:19 2005
@@ -266,9 +266,18 @@ PIO_init(theINTERP)
internal_exception(PIO_ERROR, "PIO init stacks failed.");
}
- if (!PIO_STDIN(interpreter) || !PIO_STDOUT(interpreter)
- || !PIO_STDERR(interpreter)) {
- internal_exception(PIO_ERROR, "PIO init std handles failed.");
+ /*
+ * see also #36677
+ *
+ */
+ if (!PIO_STDIN(interpreter)) {
+ PIO_STDIN(interpreter) = pmc_new(interpreter, enum_class_Undef);
+ }
+ if (!PIO_STDOUT(interpreter)) {
+ PIO_STDOUT(interpreter) = pmc_new(interpreter, enum_class_Undef);
+ }
+ if (!PIO_STDERR(interpreter)) {
+ PIO_STDERR(interpreter) = pmc_new(interpreter, enum_class_Undef);
}
if (Interp_debug_TEST(interpreter, PARROT_START_DEBUG_FLAG)) {
@@ -417,9 +426,13 @@ PIO_init_stacks(theINTERP)
for (p = bottom; p; p = p->up) {
if (p->api->Init) {
if ((*p->api->Init) (interpreter, p) != 0) {
+ /* ignore err
+ * see also #36677
char buf[1024];
sprintf(buf, "Parrot IO: Failed init layer(%s).\n", p->name);
internal_exception(PIO_ERROR, buf);
+ */
+ ;
}
}
}
Modified: branches/leo-ctx5/languages/tcl/t/tcl_pir_compiler.t
==============================================================================
--- branches/leo-ctx5/languages/tcl/t/tcl_pir_compiler.t (original)
+++ branches/leo-ctx5/languages/tcl/t/tcl_pir_compiler.t Sat Jul 30
08:31:19 2005
@@ -1,7 +1,7 @@
#!perl
use lib qw(tcl/t t . ../lib ../../lib ../../../lib);
-use Parrot::Test tests => 3;
+use Parrot::Test tests => 4;
use Test::More;
use vars qw($TODO);
@@ -56,4 +56,16 @@ pir_output_is(<<'CODE', <<'OUTPUT', "pas
CODE
hello
OUTPUT
+
+pir_output_is(<<'CODE', <<'OUTPUT', "invoke argless tcl proc from PIR");
+.sub _main @MAIN
+ load_bytecode "languages/tcl/lib/tcllib.pbc"
+ $S1 = 'proc hey {} { puts 11 }; hey; '
+ $P1 = compreg 'TCL'
+ $P0 = compile $P1, $S1
+ $P0()
+.end
+CODE
+11
+OUTPUT
}
Modified: branches/leo-ctx5/ops/cmp.ops
==============================================================================
--- branches/leo-ctx5/ops/cmp.ops (original)
+++ branches/leo-ctx5/ops/cmp.ops Sat Jul 30 08:31:19 2005
@@ -762,7 +762,7 @@ inline op xor(out INT, in INT, in INT) :
=head2 Non-flow control comparison ops
-These ops do comparisons and truth testing without doing flow control
+These ops do comparisons and truth testing without doing flow control.
=over 4
@@ -785,11 +785,11 @@ Sets $1 to 0 or 1, depending on the iden
=item B<istrue>(out INT, in PMC)
-Sets $1 to 1 or 0, depending on whether $2 is true or not
+Sets $1 to 1 or 0, depending on whether $2 is true or not.
=item B<isfalse>(out INT, in PMC)
-Sets $1 to 1 or 0, depending on whether $2 is false or not
+Sets $1 to 1 or 0, depending on whether $2 is false or not.
=cut
@@ -831,7 +831,7 @@ inline op isfalse(out INT, in PMC) {
=item B<isgt>(out INT, in PMC, in PMC)
-Sets $1 to 1 if $2 is greater than $3
+Sets $1 to 1 if $2 is greater than $3.
=cut
@@ -842,7 +842,7 @@ inline op isgt(out INT, in PMC, in PMC)
=item B<isge>(out INT, in PMC, in PMC)
-Sets $1 to 1 if $2 is greater than or equal to $3
+Sets $1 to 1 if $2 is greater than or equal to $3.
=cut
@@ -859,7 +859,7 @@ inline op isge(out INT, in PMC, in PMC)
=item B<isle>(out INT, in PMC, in PMC)
-Sets $1 to 1 if $2 is less than or equal to $3
+Sets $1 to 1 if $2 is less than or equal to $3.
=cut
@@ -891,7 +891,7 @@ inline op isle(out INT, in PMC, in PMC)
=item B<islt>(out INT, in PMC, in PMC)
-Sets $1 to 1 if $2 is less than $3
+Sets $1 to 1 if $2 is less than $3.
=cut
@@ -923,7 +923,7 @@ inline op islt(out INT, in PMC, in PMC)
=item B<iseq>(out INT, in PMC, in PMC)
-Sets $1 to 1 if $2 is equal to $3
+Sets $1 to 1 if $2 is equal to $3.
=cut
@@ -958,7 +958,7 @@ inline op iseq(out INT, in PMC, in PMC)
=item B<isne>(out INT, in PMC, in PMC)
-Sets $1 to 1 if $2 is not equal to $3
+Sets $1 to 1 if $2 is not equal to $3.
=cut
Modified: branches/leo-ctx5/t/perl/Parrot_Docs.t
==============================================================================
--- branches/leo-ctx5/t/perl/Parrot_Docs.t (original)
+++ branches/leo-ctx5/t/perl/Parrot_Docs.t Sat Jul 30 08:31:19 2005
@@ -121,9 +121,9 @@ teardown();
sub teardown
{
- Parrot::Docs::File->new(tmp_file_path('file.pod'))->delete;
- Parrot::Docs::Directory->new(tmp_dir_path('src'));
- Parrot::Docs::Directory->new(tmp_dir_path('tgt'));
+ Parrot::Docs::File->new(tmp_file_path('file.pod'))->delete();
+ Parrot::Docs::Directory->new(tmp_dir_path('src'))->delete();
+ Parrot::Docs::Directory->new(tmp_dir_path('tgt'))->delete();
}
# tmp_dir_path(@dirs)