Pascal, C++ & Fortran compilers for A/UX
William Roberts
liam at cs.qmw.ac.uk
Mon Sep 17 19:57:02 AEST 1990
In <10204 at goofy.Apple.COM> blob at apple.com (Brian Bechtel) writes:
>David Synk of Oasys (617-870-7889) reports that they have a Pascal
>compiler for A/UX. They support C, C++, F77, and Pascal. The C and F77
>are the Green Hills compilers that many people are looking for (and we
>don't seem to publicize).
If anyone has the Green Hills Pascal compiler, perhaps they'd care to try
the following test program which failed dismally under the version I saw
about this time last year.
Script started on Thu Aug 17 04:11:49 1989
# cat demo2.p
program mmc(input,output);
label 999;
{ This program demonstrates a bug in the Unisoft pascal for A/UX }
{ It will fail to link due to a missing local label, produced to }
{ deal with the statement "goto 999". }
{ W.T. Roberts, Queen Mary College, London - 17/8/89 }
{ liam at cs.qmc.ac.uk, or Applelink UK0087 }
procedure mkstr;
begin
goto 999;
end;
begin
writeln('This program won''t link');
mkstr;
999: writeln; writeln('Goodbye')
end.
# gpc -v demo2.p
/usr/lib/greenhills/pcom68 -X74 -X92 -X97 -X98 -X99 -X129 -X130 demo2.p
Pascal-68000 1.8.2H Copyright (c)1985,1986,1987 Green Hills Software, Inc.
/bin/as demo2.s -o demo2.o
/bin/ld /lib/crt0.o demo2.o -lp -lm -lc /usr/lib/unshared.ld
undefined first referenced
symbol in file
L%5 demo2.o
ld fatal: Symbol referencing errors. No output written to a.out
rm demo2.s
# gpc -v -S demo2.p
/usr/lib/greenhills/pcom68 -X74 -X92 -X97 -X98 -X99 -X129 -X130 demo2.p
Pascal-68000 1.8.2H Copyright (c)1985,1986,1987 Green Hills Software, Inc.
# cat demo2.s
file "demo2.p"
text
even
global mkstr
mkstr:
mov.l %a6,-(%sp)
mov.l L%7,%a6
jmp L%5
mov.l (%sp)+,%a6
rts
data 1
even
# allocations for mkstr
text
even
global main
main:
link %a6,&-4
movm.l &16188,-(%sp)
fmovm &252,-(%sp)
mov.l %a6,L%7
mov.l &_output,-4(%a6)
mov.l 8(%a6),_argc
mov.l 12(%a6),_argv
mov.l &23,%d2
mov.l %d2,-(%sp)
mov.l %d2,-(%sp)
pea L%13
pea _output
jsr _writestr
pea _output
jsr _writeln
jsr mkstr
lea 20(%sp),%sp
pea _output
jsr _writeln
mov.l &7,-(%sp)
mov.l &7,-(%sp)
pea L%14
pea _output
jsr _writestr
pea _output
jsr _writeln
jsr __exit
lea 24(%sp),%sp
fmovm -116(%a6),&63
movm.l -44(%a6),&15612
unlk %a6
rts
data 1
even
L%13: byte 84,104,105,115,32,112,114,111,103,114,97,109,32,119,111
byte 110,39,116,32,108,105,110,107
space 1
L%14: byte 71,111,111,100,98,121,101
space 1
lcomm L%7,4
comm _argc,4
comm _argv,4
# allocations for main
# common _argc
# import _input
# import _output
# common _argv
# 8(%a6) L%15
# 12(%a6) L%16
text
#
script done on Thu Aug 17 04:12:28 1989
--
William Roberts ARPA: liam at cs.qmw.ac.uk
Queen Mary & Westfield College UUCP: liam at qmw-cs.UUCP
Mile End Road AppleLink: UK0087
LONDON, E1 4NS, UK Tel: 071-975 5250 (Fax: 081-980 6533)
More information about the Comp.unix.aux
mailing list