<!--
UCSD Pascal System II.0 User Manual
Copyright (C) 1979 Regents of the University of California
HTML markup and formatting
Copyright (C) 2006, 2007, 2010 Peter Miller
-->
<dt>
<#include reconstruct/page "page079" "79">
<tt>G</tt><dd>
Affects the boolean variable <tt>GOTOOK</tt> in the compiler. This
boolean is used by the compiler to determine whether it should allow
the use of the Pascal <tt>GOTO</tt> statement within the program.
<p>
Default value: <tt>G-</tt>
<dl><dt><tt>G+</tt><dd>
allows the use of the GOTO statement.
<p>
<dt><tt>G-</tt><dd>
causes the compiler to generate a syntax error upon
encountering a <tt>GOTO</tt> statement.
</dl>
<p>
The <tt>G-</tt> option has been used at UCSD to restrict novice
programmers from excessive uses of the <tt>GOTO</tt> statement in situations
where more structured constructs such as <tt>FOR</tt>, <tt>WHILE</tt> or
<tt>REPEAT</tt>
statements would be more appropriate.
<p>
<dt><tt>I</tt><dd>
When an ‘I’ is followed immediately by a ‘+’ or
‘-’, the
control comment will affect the boolean variable <tt>IOCHECK</tt> within the
compiler. An alternative use of ‘I’ in a compiler control
comment
causes the compiler to include a different source file into the
compilation at that point. See <b>Include File Mechanism</b>, below,
for syntax.
<p>
<b>Iocheck Option</b>
<p>
Default value: I+
<dl><dt><tt>I+</tt><dd>
instructs the compiler to generate code after each statement
which performs any I/O, in order to check to see if the I/O
operation was accomplished successfully. In the case of an
unsuccessful I/O operation the program will be terminated
with a run time error.
<dt><tt>I-</tt><dd>
instructs the compiler not to generate any I/O checking
code. In the case of an unsuccessful I/O operation the
program is not terminated with a run time error.
</dl>