xref: /csrg-svn/usr.bin/pascal/px/px.1 (revision 50796)
143083Scael.\" Copyright (c) 1980, 1990 The Regents of the University of California.
243083Scael.\" All rights reserved.
319273Smckusick.\"
449613Scael.\" %sccs.include.redist.roff%
519273Smckusick.\"
6*50796Scael.\"	@(#)px.1	6.8 (Berkeley) 08/07/91
743083Scael.\"
843083Scael.Dd
943083Scael.Dt PX 1
10*50796Scael.Os BSD 3
1143083Scael.Sh NAME
1249613Scael.Nm \&px
1343083Scael.Nd Pascal interpreter
1443083Scael.Sh SYNOPSIS
1549613Scael.Nm \&px
1643083Scael.Op  Ar obj Op Ar argument ...
1743083Scael.Sh DESCRIPTION
1849613Scael.Nm \&Px
1919273Smckusickinterprets the abstract machine code generated by
2043083Scael.Xr pi 1 .
2119273SmckusickThe first argument is the file to be interpreted, and defaults
2219273Smckusickto
2343083Scael.Ar obj ;
2419273Smckusickremaining arguments are available to the Pascal program using the
2519273Smckusickbuilt-ins
2643083Scael.Ar argv
2719273Smckusickand
2843083Scael.Ar argc .
2949613Scael.Nm \&Px
3019273Smckusickis also invoked by
3143083Scael.Nm pix
3219273Smckusickwhen running `load and go'.
3343083Scael.Pp
3443083ScaelIf the program terminates abnormally an error message and a
3519273Smckusickcontrol flow backtrace are printed.
3619273SmckusickThe number of statements executed and total execution time
3719273Smckusickare printed after normal termination.
3819273SmckusickThe
3943083Scael.Cm p
4019273Smckusickoption of
4149613Scael.Nm \&pi
4219273Smckusicksuppresses all of this except the message indicating the cause
4319273Smckusickof abnormal termination.
4443083Scael.Sh FILES
4549613Scael.Bl -tag -width pmon.out -compact
4649613Scael.It Pa obj
4743083Scaeldefault object file
4849613Scael.It Pa pmon.out
4943083Scaelprofile data file
5049613Scael.El
5143083Scael.Sh SEE ALSO
5243083Scael.Xr pi 1 ,
5343083Scael.Xr pix 1
5449613Scael.Rs
5549613Scael.%T "Berkeley Pascal User's Manual"
5649613Scael.Re
5743083Scael.Sh DIAGNOSTICS
5819273SmckusickMost run-time error messages are self-explanatory.
5919273SmckusickSome of the more unusual ones are:
6049613Scael.Bl -tag -width indent
6149613Scael.It Reference to an inactive file
6219273SmckusickA file other than
6343083Scael.Ar input
6419273Smckusickor
6543083Scael.Ar output
6619273Smckusickwas used before a call to
6743083Scael.Ar reset
6819273Smckusickor
6943083Scael.Ar rewrite .
7049613Scael.It Statement count limit exceeded
7119273SmckusickThe limit of 500,000 executed statements
7219273Smckusick(which prevents excessive looping or recursion)
7319273Smckusickhas been exceeded.
7449613Scael.It Bad data found on integer read
7549613Scael.It Bad data found on real read
7619273SmckusickUsually, non-numeric input was found for a number.
7719273SmckusickFor reals, Pascal requires digits before and after the decimal
7819273Smckusickpoint so that numbers like `.1' or `21.' evoke the second diagnostic.
7949613Scael.It panic: Em Some message
8027985SanneIndicates an internal inconsistency detected in
8149613Scael.Nm \&px
8219273Smckusickprobably due to a Pascal system bug.
8349613Scael.El
8443083Scael.Sh HISTORY
85*50796ScaelThe
8649613Scael.Nm \&Px
87*50796Scaelcomman appeared in
8849613Scael.Bx 3.0 .
8943083Scael.Sh BUGS
9019273SmckusickPost-mortem traceback is not limited;
9119273Smckusickinfinite recursion leads to almost infinite traceback.
92