summaryrefslogtreecommitdiff
path: root/fpcsrc/tests/test/library/tlib3d.pp
blob: cd2c2fba84df8ca9ae2f7a13268b3e1ff162b8b2 (plain)
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
{ %target=win32,win64 }
{ %needlibrary }
{ %opt=-vw -Sew }
{ %neededafter }

{ On targets that support dll overloading, no
  warning should be generated, and the resulting code sholud work correctly. }
program tlib3b;

  procedure p_proc(var a : dword); external 'tlib3a' name 'p';

  function p(a1, a2, a3, a4, a5, a6, a7 : dword) : dword; external 'tlib3b' name 'p';

  var
    a : dword;
begin
  a:=0;
  p_proc(a);
  if a<>1 then
    begin
      Writeln('Error calling tlib3a p procedure');
      halt(1);
    end;
  a:=p(0,1,0,1,0,10,0);
  if a<>12 then
    begin
      Writeln('Error calling tlib3b p function');
      halt(1);
    end;
  Writeln('Everything works OK');
end.