xref: /original-bsd/usr.bin/pascal/px/px.1 (revision 12f5d8d0)
1.\" Copyright (c) 1980, 1990 The Regents of the University of California.
2.\" All rights reserved.
3.\"
4.\" %sccs.include.redist.roff%
5.\"
6.\"	@(#)px.1	6.8 (Berkeley) 08/07/91
7.\"
8.Dd
9.Dt PX 1
10.Os BSD 3
11.Sh NAME
12.Nm \&px
13.Nd Pascal interpreter
14.Sh SYNOPSIS
15.Nm \&px
16.Op  Ar obj Op Ar argument ...
17.Sh DESCRIPTION
18.Nm \&Px
19interprets the abstract machine code generated by
20.Xr pi 1 .
21The first argument is the file to be interpreted, and defaults
22to
23.Ar obj ;
24remaining arguments are available to the Pascal program using the
25built-ins
26.Ar argv
27and
28.Ar argc .
29.Nm \&Px
30is also invoked by
31.Nm pix
32when running `load and go'.
33.Pp
34If the program terminates abnormally an error message and a
35control flow backtrace are printed.
36The number of statements executed and total execution time
37are printed after normal termination.
38The
39.Cm p
40option of
41.Nm \&pi
42suppresses all of this except the message indicating the cause
43of abnormal termination.
44.Sh FILES
45.Bl -tag -width pmon.out -compact
46.It Pa obj
47default object file
48.It Pa pmon.out
49profile data file
50.El
51.Sh SEE ALSO
52.Xr pi 1 ,
53.Xr pix 1
54.Rs
55.%T "Berkeley Pascal User's Manual"
56.Re
57.Sh DIAGNOSTICS
58Most run-time error messages are self-explanatory.
59Some of the more unusual ones are:
60.Bl -tag -width indent
61.It Reference to an inactive file
62A file other than
63.Ar input
64or
65.Ar output
66was used before a call to
67.Ar reset
68or
69.Ar rewrite .
70.It Statement count limit exceeded
71The limit of 500,000 executed statements
72(which prevents excessive looping or recursion)
73has been exceeded.
74.It Bad data found on integer read
75.It Bad data found on real read
76Usually, non-numeric input was found for a number.
77For reals, Pascal requires digits before and after the decimal
78point so that numbers like `.1' or `21.' evoke the second diagnostic.
79.It panic: Em Some message
80Indicates an internal inconsistency detected in
81.Nm \&px
82probably due to a Pascal system bug.
83.El
84.Sh HISTORY
85The
86.Nm \&Px
87comman appeared in
88.Bx 3.0 .
89.Sh BUGS
90Post-mortem traceback is not limited;
91infinite recursion leads to almost infinite traceback.
92