[Rt-commit] [svn] r1012 - in mzscheme: . Language-MzScheme
Language-MzScheme/t/scripts
autrijus at pallas.eruditorum.org
autrijus at pallas.eruditorum.org
Mon Jun 7 02:31:08 EDT 2004
Author: autrijus
Date: Mon Jun 7 02:31:08 2004
New Revision: 1012
Modified:
mzscheme/ (props changed)
mzscheme/Language-MzScheme/Makefile.PL
mzscheme/Language-MzScheme/mzscheme.i
mzscheme/Language-MzScheme/t/scripts/three.pl
Log:
----------------------------------------------------------------------
r5442 at not: autrijus | 2004-06-07T06:31:27.779240Z
* attempt to fix stack corruption.
----------------------------------------------------------------------
Modified: mzscheme/Language-MzScheme/Makefile.PL
==============================================================================
--- mzscheme/Language-MzScheme/Makefile.PL (original)
+++ mzscheme/Language-MzScheme/Makefile.PL Mon Jun 7 02:31:08 2004
@@ -46,17 +46,22 @@
WriteAll( sign => 1 );
sub make_hi {
- local $/ = ";\n";
-
open IN, "$include/scheme.h" or die $!;
open OUT, "> scheme.hi" or die $!;
while (<IN>) {
- s/.*?^enum\b/enum/ms or next;
- print OUT $_, "\n";
+ #s/.*?^enum\b/enum/ms or next;
+ next if /^#include\b/;
+ next if /typedef struct Scheme_Jumpup_Buf \{/ .. /\} Scheme_Jumpup_Buf/;
+ next if /typedef struct Scheme_Thread \{/ .. /\} Scheme_Thread/;
+ if (/^MZ_EXTERN/) {
+ s/^MZ_EXTERN\s(.*?)\(\*(.*?)\)/$1$2/ or next;
+ }
+ print OUT $_;
}
close OUT;
close IN;
+ local $/ = ";\n";
open IN, "$include/schemef.h" or die $!;
open OUT, "> schemef.hi" or die $!;
while (<IN>) {
Modified: mzscheme/Language-MzScheme/mzscheme.i
==============================================================================
--- mzscheme/Language-MzScheme/mzscheme.i (original)
+++ mzscheme/Language-MzScheme/mzscheme.i Mon Jun 7 02:31:08 2004
@@ -6,6 +6,6 @@
Scheme_Config *scheme_config;
Scheme_Env *scheme_basic_env(void);
Scheme_Object *scheme_get_param(Scheme_Config *c, const int pos);
+void scheme_set_stack_base(void *base, int no_auto_statics);
#include "scheme.hi"
-#include "schemef.hi"
Modified: mzscheme/Language-MzScheme/t/scripts/three.pl
==============================================================================
--- mzscheme/Language-MzScheme/t/scripts/three.pl (original)
+++ mzscheme/Language-MzScheme/t/scripts/three.pl Mon Jun 7 02:31:08 2004
@@ -3,8 +3,13 @@
use strict;
use Language::MzScheme;
+scheme_set_stack_base(undef, 1);
my $env = scheme_basic_env();
+scheme_set_stack_base(undef, 1);
my $out = scheme_get_param($scheme_config, $MZCONFIG_OUTPUT_PORT);
+scheme_set_stack_base(undef, 1);
my $val = scheme_eval_string('(+ 1 2)', $env);
+scheme_set_stack_base(undef, 1);
scheme_display($val, $out);
+scheme_set_stack_base(undef, 1);
scheme_display(scheme_make_char("\n"), $out);
More information about the Rt-commit
mailing list