<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.ice-online.com/index.php?action=history&amp;feed=atom&amp;title=GOTO</id>
	<title>GOTO - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.ice-online.com/index.php?action=history&amp;feed=atom&amp;title=GOTO"/>
	<link rel="alternate" type="text/html" href="https://wiki.ice-online.com/index.php?title=GOTO&amp;action=history"/>
	<updated>2026-04-12T15:58:56Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.34.1</generator>
	<entry>
		<id>https://wiki.ice-online.com/index.php?title=GOTO&amp;diff=719&amp;oldid=prev</id>
		<title>ConvertBot: unconditionally transfers macro program control</title>
		<link rel="alternate" type="text/html" href="https://wiki.ice-online.com/index.php?title=GOTO&amp;diff=719&amp;oldid=prev"/>
		<updated>2020-04-27T22:04:36Z</updated>

		<summary type="html">&lt;p&gt;unconditionally transfers macro program control&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;unconditionally transfers macro program control&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;name&amp;gt; - Name of statement label&lt;br /&gt;
&lt;br /&gt;
GOTO is used in conjunction with the LABEL command to transfer the flow of&lt;br /&gt;
control within a macro.  &amp;lt;label&amp;gt; can be any string of alphabetic characters&lt;br /&gt;
(including the underscore) or digits.  &amp;quot;ABC&amp;quot;, &amp;quot;THE_TOP&amp;quot;, &amp;quot;100&amp;quot;, and &amp;quot;123G&amp;quot; are&lt;br /&gt;
all examples of valid statement labels. &lt;br /&gt;
&lt;br /&gt;
When a GOTO is encountered, the macro begins looking in the specified direction&lt;br /&gt;
for a LABEL command whose argument exactly matches &amp;lt;label&amp;gt;. If it never finds&lt;br /&gt;
such a LABEL command, it enters suspend (S-Midas) mode with an error. &lt;br /&gt;
&lt;br /&gt;
COMPUTED GOTOs&lt;br /&gt;
&lt;br /&gt;
  Because the label matching occurs at run-time, it means that you can caret (^)&lt;br /&gt;
  a result label for the &amp;lt;label&amp;gt; argument, and a single GOTO can reference a&lt;br /&gt;
  number of labels depending on the value of the result. This can be useful when&lt;br /&gt;
  you want to perform a number of alternatives depending on the value of some&lt;br /&gt;
  result.  It is usually advisable to use the &amp;quot;*&amp;quot; as the direction argument,&lt;br /&gt;
  since you may not know at the time of writing the macro whether the run-time&lt;br /&gt;
  destination will be above or below you.  For example:&lt;br /&gt;
&lt;br /&gt;
    goto case^which_one &lt;br /&gt;
&lt;br /&gt;
  will look for LABEL CASE1 if WHICH_ONE = 1, LABEL CASE2 if WHICH_ONE = 2,&lt;br /&gt;
  LABEL CASE523.4 if WHICH_ONE = 523.4, LABEL CASESTOP if WHICH_ONE = STOP, etc.&lt;br /&gt;
&lt;br /&gt;
INTERACTIVE GOTOs&lt;br /&gt;
&lt;br /&gt;
  Because the GOTO is a run-time command, it can be used at the S-Midas prompt&lt;br /&gt;
  after an error has occurred or the macro has PAUSEd.  This can be very helpful&lt;br /&gt;
  in a debugging situation.&lt;br /&gt;
&lt;br /&gt;
Switches: NONE&lt;br /&gt;
&lt;br /&gt;
See Also: LABEL&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:NXM_Explain]]&lt;/div&gt;</summary>
		<author><name>ConvertBot</name></author>
		
	</entry>
</feed>