According to The African Chief:
- specifying DLL names;
With Borland, you need to specify the name of the DLL from which you are importing a function. You need to do this with *every* function. This is extremely tedious. Try doing that with the whole Win32 API for example. Also, you would need to find some documentation on which DLL holds which function. That is even more tedious. Thus, if we are going to support the Borland syntax, then using it should be optional. With GPC, you don't need to specify the DLL name - that is, I think, a *great* advantage over Borland.
Or you can specify the DLL name *once* with (*$L foo.a *) or something similar to be implemented. Yes - a great advantage!
- not having to redeclare the entire function in the implementation section;
I think it is good to support this. With Borland, you can redeclare the whole function, or you can just specify it's name. You are not forced to do it in any particular way, and you can mix and match. It would be nice if GPC supported this.
GPC *does* support this.
- Delphi's "name" directive;
This is exactly the same as GPC's "asmname" directive. We can implement this simply by also allowing just the use of "name" in any place where "asmname" would be allowed (i.e., we can dispense with the "asm" part of the "asmname" directive). That way, we get the best of both worlds!
Sounds reasonable. So should we just change "asmname" to "name"? Or keep both?
Peter
Dipl.-Phys. Peter Gerwinski, Essen, Germany, free physicist and programmer peter.gerwinski@uni-essen.de - http://home.pages.de/~peter.gerwinski/ [970201] maintainer GNU Pascal [970624] - http://home.pages.de/~gnu-pascal/ [970125]