* fix loop variable

This commit is contained in:
peter 2003-05-10 09:55:00 +00:00
parent f64d66fa48
commit 409e9c5606

View File

@ -4,54 +4,56 @@ program tjmp;
var var
global_envbuf: jmp_buf; global_envbuf: jmp_buf;
type type
tmyobject = object tmyobject = object
envbuf : jmp_buf; envbuf : jmp_buf;
i, j : integer; j : integer;
jmpresult : integer; jmpresult : integer;
constructor init; constructor init;
destructor done; destructor done;
procedure testlongjmp;virtual; procedure testlongjmp;virtual;
procedure testsetjmp;virtual; procedure testsetjmp;virtual;
end; end;
pderivedobject = ^tderivedobject; pderivedobject = ^tderivedobject;
tderivedobject = object(tmyobject) tderivedobject = object(tmyobject)
procedure testlongjmp; virtual; procedure testlongjmp; virtual;
procedure testsetjmp; virtual; procedure testsetjmp; virtual;
end; end;
constructor tmyobject.init; constructor tmyobject.init;
begin begin
end; end;
destructor tmyobject.done; destructor tmyobject.done;
begin begin
end; end;
procedure tmyobject.testlongjmp; procedure tmyobject.testlongjmp;
begin begin
end; end;
procedure tmyobject.testsetjmp; procedure tmyobject.testsetjmp;
begin begin
end; end;
procedure tderivedobject.testlongjmp; procedure tderivedobject.testlongjmp;
begin begin
longjmp(envbuf, 255); longjmp(envbuf, 255);
end; end;
procedure tderivedobject.testsetjmp; procedure tderivedobject.testsetjmp;
var
i : integer;
begin begin
j:=0; j:=0;
jmpresult:=setjmp(envbuf); jmpresult:=setjmp(envbuf);
@ -63,7 +65,7 @@ procedure tderivedobject.testsetjmp;
j:=j + 13; j:=j + 13;
if j = 13 then if j = 13 then
self.testlongjmp; self.testlongjmp;
end; end;
end; end;
255 : WriteLn('Sucess!'); 255 : WriteLn('Sucess!');
else else
@ -78,8 +80,8 @@ procedure testlongjmp;
begin begin
longjmp(global_envbuf, 255); longjmp(global_envbuf, 255);
end; end;
procedure testsetjmp; procedure testsetjmp;
var var
i, j : integer; i, j : integer;
@ -95,7 +97,7 @@ procedure testsetjmp;
j:=j + 13; j:=j + 13;
if j = 13 then if j = 13 then
testlongjmp; testlongjmp;
end; end;
end; end;
255 : WriteLn('Sucess!'); 255 : WriteLn('Sucess!');
else else
@ -105,7 +107,7 @@ procedure testsetjmp;
end end
end; end;
end; end;
var var
pobj : pderivedobject; pobj : pderivedobject;
begin begin
@ -119,7 +121,10 @@ end.
{ {
$Log$ $Log$
Revision 1.1 2002-09-15 09:53:05 carl Revision 1.2 2003-05-10 09:55:00 peter
* fix loop variable
Revision 1.1 2002/09/15 09:53:05 carl
* initial revision of longjmp/setjmp testing * initial revision of longjmp/setjmp testing
} }