|
|
DataMuseum.dkPresents historical artifacts from the history of: Rational R1000/400 Tapes |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about Rational R1000/400 Tapes Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - downloadIndex: B T
Length: 955 (0x3bb)
Types: TextFile
Names: »B«
└─⟦a7d1ea751⟧ Bits:30000550 8mm tape, Rational 1000, !users!projects 94_04_11
└─⟦129cab021⟧ »DATA«
└─⟦this⟧
└─⟦f64eaa120⟧ Bits:30000752 8mm tape, Rational 1000, !projects 93 02 16
└─⟦6f12a12be⟧ »DATA«
└─⟦this⟧
└─⟦2f6cfab89⟧ Bits:30000547 8mm tape, Rational 1000, !projects 94-01-04
└─⟦d65440be7⟧ »DATA«
└─⟦this⟧
with Subprogram_Implementation;
with Text_Io;
procedure Test_Call_Backs is
package Si renames Subprogram_Implementation;
P, Q, R : Si.Subprogram_Type;
generic
with procedure To_Call (P : Natural);
function Value return Si.Subprogram_Type;
function Value return Si.Subprogram_Type is
begin
return Si.Get (Si.Mode_Vector'(1 .. 1 => Si.In_Mode));
end Value;
procedure Call (Sp : Si.Subprogram_Type; Data : Natural) is
Spp : Si.Subprogram_Type;
Offset : constant Si.Offset_Vector := (Spp'Offset, Data'Offset);
begin
Spp := Sp;
Si.Invoke (Si.Mode_Vector'(1 .. 1 => Si.In_Mode), Offset);
end Call;
procedure One (Count : Natural) is
begin
for I in 1 .. Count loop
Text_Io.Put_Line ("one");
end loop;
end One;
function Make_Sp_Pointer is new Value (One);
begin
P := Make_Sp_Pointer;
Call (P, 5);
end Test_Call_Backs;