BSD 2 release
[unix-history] / man / px.u
CommitLineData
55cf7e9d
BJ
1.TH PX UCB 4/8/79 UCB
2.SH NAME
3px \- Pascal interpreter
4.SH SYNOPSIS
5.B px
6[ obj [ argument ... ] ]
7.SH DESCRIPTION
8.I Px
9interprets the abstract machine code generated by
10.I pi.
11The first argument is the file to be interpreted, and defaults
12to
13.IR obj \|;
14remaining arguments are available to the Pascal program using the
15built-ins
16.I argv
17and
18.I argc.
19.I Px
20is also invoked by
21.I pix
22when running `load and go'.
23.PP
24If the program terminates abnormally an error message and a
25control flow backtrace are printed.
26The number of statements executed and total execution time
27are printed after normal termination.
28The
29.B p
30option of
31.I pi
32suppresses all of this except the message indicating the cause
33of abnormal termination.
34.SH FILES
35.DT
36obj default object file
37.br
38pmon.out profile data file
39.SH "SEE ALSO"
40Berkeley Pascal User's Manual
41.br
42pi(UCB), pix(UCB)
43.SH DIAGNOSTICS
44Most run-time error messages are self-explanatory.
45Some of the more unusual ones are:
46.HP 6
47Reference to an inactive file
48.br
49A file other than
50.I input
51or
52.I output
53was used before a call to
54.I reset
55or
56.I rewrite.
57.HP 6
58Statement count limit exceeded
59.br
60The limit of 500,000 executed statements
61(which prevents excessive looping or recursion)
62has been exceeded.
63.HP 6
64Bad data found on integer read
65.br
66.ns
67.HP 6
68Bad data found on real read
69.br
70Usually, non-numeric input was found for a number.
71For reals, Pascal requires digits before and after the decimal
72point so that numbers like `.1' or `21.' evoke the second diagnostic.
73.HP 6
74panic:
75.I "Some message"
76.br
77Indicates a internal inconsistency detected in
78.I px
79probably due to a Pascal system bug.
80.sh AUTHORS
81Charles B. Haley, William N. Joy, and Ken Thompson
82.SH BUGS
83Calls to the procedures
84.I dispose
85and
86.I linelimit
87are ignored.
88.PP
89Post-mortem traceback is not limited;
90infinite recursion leads to almost infinite traceback.
91.PP
92Because interrupts sometimes find the system in the middle of a
93.B procedure
94or
95.B function
96entry or exit,
97the error backtrace on an interrupt is occasionally meaningless.
98The current line is, however, always correct;
99only the call backtrace and the name of the current routine may be lost.