Commit | Line | Data |
---|---|---|
b217d013 BJ |
1 | .TH PI UCB 4/8/79 UCB |
2 | .SH NAME | |
3 | pi \- Pascal interpreter code translator | |
4 | .SH SYNOPSIS | |
5 | .B pi | |
6 | [ | |
7 | .B \-blnpstuwz | |
8 | ] [ | |
9 | .B \-i | |
10 | name ... | |
11 | ] name.p | |
12 | .SH DESCRIPTION | |
13 | .I Pi | |
14 | translates the program in the file | |
15 | .I name.p | |
16 | leaving interpreter code in the file | |
17 | .I obj | |
18 | in the current directory. | |
19 | The interpreter code can be executed using | |
20 | .I px. | |
21 | .I Pix | |
22 | performs the functions of | |
23 | .I pi | |
24 | and | |
25 | .I px | |
26 | for `load and go' Pascal. | |
27 | .PP | |
28 | The following flags are interpreted by | |
29 | .I pi; | |
30 | the associated options can also be controlled in comments within the program | |
31 | as described in the | |
32 | .I "Berkeley Pascal User's Manual." | |
33 | .TP 6 | |
34 | .B \-b | |
35 | Block buffer the file | |
36 | .I output. | |
37 | .TP 6 | |
38 | .B \-i | |
39 | Enable the listing for | |
40 | any specified procedures and functions and while processing any specified | |
41 | .B include | |
42 | files. | |
43 | .TP 6 | |
44 | .B \-l | |
45 | Make a program listing during translation. | |
46 | .TP 6 | |
47 | .B \-n | |
48 | Begin each listed | |
49 | .B include | |
50 | file on a new page with a banner line. | |
51 | .TP 6 | |
52 | .B \-p | |
53 | Suppress the post-mortem control flow backtrace | |
54 | if an error occurs; | |
55 | suppress statement limit counting. | |
56 | .TP 6 | |
57 | .B \-s | |
58 | Accept standard Pascal only; | |
59 | non-standard constructs cause warning diagnostics. | |
60 | .TP 6 | |
61 | .B \-t | |
62 | Suppress runtime tests of subrange variables and treat | |
63 | .B assert | |
64 | statements as comments. | |
65 | .TP 6 | |
66 | .B \-u | |
67 | Card image mode; | |
68 | only the first 72 characters of input lines are used. | |
69 | .TP 6 | |
70 | .B \-w | |
71 | Suppress warning diagnostics. | |
72 | .TP 6 | |
73 | .B \-z | |
74 | Allow execution profiling with | |
75 | .I pxp | |
76 | by generating statement counters, and arranging for the | |
77 | creation of the profile data file | |
78 | .I pmon.out | |
79 | when the resulting object is executed. | |
80 | .dt | |
81 | .SH FILES | |
82 | file.p input file | |
83 | .br | |
84 | file.i \fBinclude\fR file(s) | |
85 | .br | |
86 | /usr/lib/pi_strings text of the error messages | |
87 | .br | |
88 | .nf | |
89 | /usr/lib/how_pi* basic usage explanation | |
90 | .fi | |
91 | obj interpreter code output | |
92 | .SH "SEE ALSO" | |
93 | Berkeley Pascal User's Manual | |
94 | .br | |
95 | pix(UCB), | |
96 | px(UCB), | |
97 | pxp(UCB), | |
98 | pcc(UCB), | |
99 | pxref(UCB) | |
100 | .SH DIAGNOSTICS | |
101 | For a basic explanation do | |
102 | .IP | |
103 | .B pi | |
104 | .PP | |
105 | In the diagnostic output of the translator, | |
106 | lines containing syntax errors are listed with a flag indicating the | |
107 | point of error. | |
108 | Diagnostic messages indicate the action which the recovery mechanism | |
109 | took in order to be able to continue parsing. | |
110 | Some diagnostics indicate only that the input is `malformed.' | |
111 | This occurs if the recovery can find no simple correction to make the input | |
112 | syntactically valid. | |
113 | .IP | |
114 | Semantic error diagnostics indicate a line in the source text near the | |
115 | point of error. | |
116 | Some errors evoke more than one diagnostic to help pinpoint the error; | |
117 | the follow-up messages begin with an ellipsis `...'. | |
118 | .IP | |
119 | .ne 8 | |
120 | The first character of each error message indicates its class: | |
121 | .IP | |
122 | .ta 1ic 2.i | |
123 | E Fatal error; no code will be generated. | |
124 | .br | |
125 | e Non-fatal error. | |
126 | .br | |
127 | w Warning \- a potential problem. | |
128 | .br | |
129 | s Non-standard Pascal construct warning. | |
130 | .IP | |
131 | If a severe error occurs which inhibits further processing, | |
132 | the translator will give a diagnostic and then `QUIT'. | |
133 | .SH AUTHORS | |
134 | Charles B. Haley, William N. Joy, and Ken Thompson | |
135 | .SH BUGS | |
136 | Formal parameters which are procedures and functions are not supported. | |
137 | .PP | |
138 | The keyword | |
139 | .B packed | |
140 | and the function | |
141 | .I dispose | |
142 | are recognized but have no effect. | |
143 | .PP | |
144 | For clarity, | |
145 | semantic errors should be flagged at an appropriate place in the source text, | |
146 | and multiple instances of the `same' semantic error should be summarized | |
147 | at the end of a | |
148 | .B procedure | |
149 | or | |
150 | .B function | |
151 | rather than evoking many diagnostics. | |
152 | .PP | |
153 | When | |
154 | .B include | |
155 | files are present, | |
156 | diagnostics relating to the last procedure in one file may appear after the | |
157 | beginning of the listing of the next. |