Hello David,
I just noticed that you complained about changes in gpc that break your programs. Unfortunatly, more changes are coming. Namely im main program you have:
PROCEDURE test(request:integer); EXTERNAL name 'test';
and in a module:
PROCEDURE test(request:integer) ;
This will stop working realy soon. I am working on qualified identifiers and to support them properly we _have to_ change external name corresponding to Pascal name. If you need to call Pascal routine by its link name you should specify the link name. Whith recent gpc you should use:
PROCEDURE test(request:integer) ; attribute(name='test');
If you need something that works with old versions of gpc use:
PROCEDURE test(request:integer) ; asmname 'test';
(but the second form will stop working in future versions).