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