Bonjour à tous,

Nouveau sur ce forum et nouveau en prog aussi...
J'ai un petit souci dans le code suivant :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
 
program Project1;
 
{$APPTYPE CONSOLE}
 
uses
  SysUtils;
 
type Pelement=^Telement;
Tliste=record
tete:Pelement;
fin:Pelement;
pos:Pelement;
end;
 
Telement=record
suivant:Pelement;
precedent:Pelement;
data:string;
end;
var tete:Pelement;
////////////////////////////////////////////////////////////////////////////////
 
procedure ajout(var l:Tliste; s:string);
var P:Pelement;
 
begin
new(P);
P^.suivant:=nil;
P^.precedent:=nil;
P^.data:=s;
 
if l.tete=nil then
l.tete:=P
else
l.tete^.suivant:=l.fin;
l.fin:=P;
l.pos:=P;
end;
 
////////////////////////////////////////////////////////////////////////////////
 
procedure affiche(s:Pelement);
Begin
while (tete<>nil) do
begin
writeln(tete^.data);
tete:=tete^.suivant;
end;
readln;
end;
 
////////////////////////////////////////////////////////////////////////////////
 
Begin
ajout(tete,'toto');
affiche(tete);
readln;
end.
En effet, à l'exécution il me sort une erreur :
[Erreur] Project1.dpr(55): E2033 Les types des paramètres VAR originaux et formels doivent être identiques.
Quelqu'un peut m'aider ?

Merci à vous,