{file: jim.pas} unit jim; {$ifdef fpc} {$mode objfpc}{h+} {$endif}
interface function fna: string; function fnb: string; implementation function fna: string; begin fna := 'jim'; end; function fnb: string; begin fnb := fna; end; end. {file: prog.pas} Program Prog; {$ifdef fpc} {$mode objfpc}{h+} {$endif} uses jim; function fna: string; begin fna := 'Prog'; end; begin writeln('fna = ',fna); writeln('jim.fna = ,'jim.fna); end. Compiled with both TurboPascal 6.0 and fpc 2.4.4. the output in both cases is "Prog". To get "Jim" in the main program file (prog.pas) I have to use jim.fna explicitely: Turbo Pascal Version 6.0 Copyright (c) 1983,90 Borland International fna = Prog jim.fna = jim Free Pascal Compiler version 2.4.4 [2011/04/23] for i386 Copyright (c) 1993-2010 by Florian Klaempfl Target OS: Win32 for i386 Compiling prog.pas Linking prog.exe 16 lines compiled, 0.8 sec , 26912 bytes code, 1624 bytes data F:\TP6>prog fna = Prog jim.fna = jim Bart _______________________________________________ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-pascal