External, C, AsmName, ..._(re)
Sun, 8 Sep 1996 00:34:02 +0200 (MET DST)
According to Berend de Boer:
> Can we not simply see a C .h file as an interface-only module? I mean I can
> simply import a c .h file which gpc parses and all symbols defined in that
> header file are exported symbols?
This would mean that GPC would have to parse C source.
Remember that #include "foo.h" or (*$include "foo.h" *) just means
that GPC treads the file `foo.h' just if its contents were written
in our source file. A Pascal program using this mechanism would
in fact look like the following:
Program Test;
extern int foo;
extern void ioctl (int fildes, int cmd, ...);
begin
[...]
end.
You don't actually want this. ;-)
> I don't know how far this is feasible. And it doesn't cover a.out modules
> creating using other languages (GNAT, ...). But it does cover the majority of
> cases you need externals.
You can write a C header file for everything you want to import,
independently of the language it was originally written in. Our
point is that it must also be possible to write a *Pascal* interface
for everything we want to import.
Peter
e-mail: peter.gerwinski@uni-essen.de
home address: D\"usseldorfer Str. 35, 45145 Essen, Germany
WWW: http://agnes.dida.physik.uni-essen.de/~peter
Peter Gerwinski (peter@agnes.dida.physik.uni-essen.de)
HTML conversion by Lluís de Yzaguirre i Maura
Institut de Lingüística Aplicada -
Universitat "Pompeu Fabra"
e-mail: de_yza@upf.es