<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://mediawiki.kfs.oeaw.ac.at/stx/docs/wiki/index.php?action=history&amp;feed=atom&amp;title=Programmer_Guide%2FCommand_Reference%2FGOSUBX</id>
	<title>Programmer Guide/Command Reference/GOSUBX - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://mediawiki.kfs.oeaw.ac.at/stx/docs/wiki/index.php?action=history&amp;feed=atom&amp;title=Programmer_Guide%2FCommand_Reference%2FGOSUBX"/>
	<link rel="alternate" type="text/html" href="https://mediawiki.kfs.oeaw.ac.at/stx/docs/wiki/index.php?title=Programmer_Guide/Command_Reference/GOSUBX&amp;action=history"/>
	<updated>2026-05-07T01:03:08Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.43.6</generator>
	<entry>
		<id>https://mediawiki.kfs.oeaw.ac.at/stx/docs/wiki/index.php?title=Programmer_Guide/Command_Reference/GOSUBX&amp;diff=10482&amp;oldid=prev</id>
		<title>Jw at 07:49, 16 August 2019</title>
		<link rel="alternate" type="text/html" href="https://mediawiki.kfs.oeaw.ac.at/stx/docs/wiki/index.php?title=Programmer_Guide/Command_Reference/GOSUBX&amp;diff=10482&amp;oldid=prev"/>
		<updated>2019-08-16T07:49:10Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 09:49, 16 August 2019&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l1&quot;&gt;Line 1:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 1:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  GOSUBX &amp;lt;var&amp;gt;subrlabel&amp;lt;/var&amp;gt; [&amp;lt;var&amp;gt;arguments&amp;lt;/var&amp;gt;]&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  GOSUBX &amp;lt;var&amp;gt;subrlabel&amp;lt;/var&amp;gt; [&amp;lt;var&amp;gt;arguments&amp;lt;/var&amp;gt;]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Like the &amp;lt;code&amp;gt;[[Programmer Guide/Command Reference/GOSUB|GOSUB ]]&amp;lt;/code&amp;gt; statement, &amp;lt;code&amp;gt;GOSUBX&amp;lt;/code&amp;gt; will call the local subroutine starting at the &amp;lt;var&amp;gt;subrlabel&amp;lt;/var&amp;gt; label, and mandatorily ending with an appropriate [[Programmer_Guide/Command_Reference/EXIT|EXIT]] statement. Note that, unlike the plain &amp;lt;code&amp;gt;[[Programmer Guide/Command Reference/GOSUB|GOSUB]]&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;GOSUBX&amp;lt;/code&amp;gt; will &#039;&#039;not&#039;&#039; create a new local varible space, instead the subroutine use &#039;&#039;in the local variable space of the caller&#039;&#039;, meaning that any changes to local variables done in the subroutine will also be visible to the caller.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Like the &amp;lt;code&amp;gt;[[Programmer Guide/Command Reference/GOSUB|GOSUB ]]&amp;lt;/code&amp;gt; statement, &amp;lt;code&amp;gt;GOSUBX&amp;lt;/code&amp;gt; will call the local subroutine starting at the &amp;lt;var&amp;gt;subrlabel&amp;lt;/var&amp;gt; &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[[Programmer_Guide/Source_code#labels|&lt;/ins&gt;label&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;]]&lt;/ins&gt;, and mandatorily ending with an appropriate [[Programmer_Guide/Command_Reference/EXIT|EXIT]] statement. Note that, unlike the plain &amp;lt;code&amp;gt;[[Programmer Guide/Command Reference/GOSUB|GOSUB]]&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;GOSUBX&amp;lt;/code&amp;gt; will &#039;&#039;not&#039;&#039; create a new local varible space, instead the subroutine use &#039;&#039;in the local variable space of the caller&#039;&#039;, meaning that any changes to local variables done in the subroutine will also be visible to the caller.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;For this reason, the &amp;lt;code&amp;gt;GOSUBX&amp;lt;/code&amp;gt; statement can be a useful tool if numerous arguments and data need to be passed or also for other reasons, but it should be used with care, because changing the variables of the callers may be done as easily unintentionally.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;For this reason, the &amp;lt;code&amp;gt;GOSUBX&amp;lt;/code&amp;gt; statement can be a useful tool if numerous arguments and data need to be passed or also for other reasons, but it should be used with care, because changing the variables of the callers may be done as easily unintentionally.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Jw</name></author>
	</entry>
	<entry>
		<id>https://mediawiki.kfs.oeaw.ac.at/stx/docs/wiki/index.php?title=Programmer_Guide/Command_Reference/GOSUBX&amp;diff=8700&amp;oldid=prev</id>
		<title>Toni at 07:56, 25 January 2016</title>
		<link rel="alternate" type="text/html" href="https://mediawiki.kfs.oeaw.ac.at/stx/docs/wiki/index.php?title=Programmer_Guide/Command_Reference/GOSUBX&amp;diff=8700&amp;oldid=prev"/>
		<updated>2016-01-25T07:56:48Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 09:56, 25 January 2016&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l2&quot;&gt;Line 2:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 2:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Like the &amp;lt;code&amp;gt;[[Programmer Guide/Command Reference/GOSUB|GOSUB ]]&amp;lt;/code&amp;gt; statement, &amp;lt;code&amp;gt;GOSUBX&amp;lt;/code&amp;gt; will call the local subroutine starting at the &amp;lt;var&amp;gt;subrlabel&amp;lt;/var&amp;gt; label, and mandatorily ending with an appropriate [[Programmer_Guide/Command_Reference/EXIT|EXIT]] statement. Note that, unlike the plain &amp;lt;code&amp;gt;[[Programmer Guide/Command Reference/GOSUB|GOSUB]]&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;GOSUBX&amp;lt;/code&amp;gt; will &amp;#039;&amp;#039;not&amp;#039;&amp;#039; create a new local varible space, instead the subroutine use &amp;#039;&amp;#039;in the local variable space of the caller&amp;#039;&amp;#039;, meaning that any changes to local variables done in the subroutine will also be visible to the caller.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Like the &amp;lt;code&amp;gt;[[Programmer Guide/Command Reference/GOSUB|GOSUB ]]&amp;lt;/code&amp;gt; statement, &amp;lt;code&amp;gt;GOSUBX&amp;lt;/code&amp;gt; will call the local subroutine starting at the &amp;lt;var&amp;gt;subrlabel&amp;lt;/var&amp;gt; label, and mandatorily ending with an appropriate [[Programmer_Guide/Command_Reference/EXIT|EXIT]] statement. Note that, unlike the plain &amp;lt;code&amp;gt;[[Programmer Guide/Command Reference/GOSUB|GOSUB]]&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;GOSUBX&amp;lt;/code&amp;gt; will &amp;#039;&amp;#039;not&amp;#039;&amp;#039; create a new local varible space, instead the subroutine use &amp;#039;&amp;#039;in the local variable space of the caller&amp;#039;&amp;#039;, meaning that any changes to local variables done in the subroutine will also be visible to the caller.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;For this reason, the &amp;lt;code&amp;gt;GOSUBX&amp;lt;/code&amp;gt; statement &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;can &lt;/del&gt;can be a useful tool if numerous arguments and data need to be passed or for other reasons, but it should be used with care, because changing the variables of the callers may be done as easily unintentionally.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;For this reason, the &amp;lt;code&amp;gt;GOSUBX&amp;lt;/code&amp;gt; statement can be a useful tool if numerous arguments and data need to be passed or &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;also &lt;/ins&gt;for other reasons, but it should be used with care, because changing the variables of the callers may be done as easily unintentionally.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;See also:&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;See also:&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[../GOTO|GOTO]], [[../DISPATCH|DISPATCH]], [[../MACRO|MACRO]]&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[../GOTO|GOTO]], [[../DISPATCH|DISPATCH]], [[../MACRO|MACRO]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Toni</name></author>
	</entry>
	<entry>
		<id>https://mediawiki.kfs.oeaw.ac.at/stx/docs/wiki/index.php?title=Programmer_Guide/Command_Reference/GOSUBX&amp;diff=8699&amp;oldid=prev</id>
		<title>Toni at 07:55, 25 January 2016</title>
		<link rel="alternate" type="text/html" href="https://mediawiki.kfs.oeaw.ac.at/stx/docs/wiki/index.php?title=Programmer_Guide/Command_Reference/GOSUBX&amp;diff=8699&amp;oldid=prev"/>
		<updated>2016-01-25T07:55:54Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 09:55, 25 January 2016&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l3&quot;&gt;Line 3:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 3:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;For this reason, the &amp;lt;code&amp;gt;GOSUBX&amp;lt;/code&amp;gt; statement can can be a useful tool if numerous arguments and data need to be passed or for other reasons, but it should be used with care, because changing the variables of the callers may be done as easily unintentionally.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;For this reason, the &amp;lt;code&amp;gt;GOSUBX&amp;lt;/code&amp;gt; statement can can be a useful tool if numerous arguments and data need to be passed or for other reasons, but it should be used with care, because changing the variables of the callers may be done as easily unintentionally.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;See also:&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[[../GOTO|GOTO]], [[../DISPATCH|DISPATCH]], [[../MACRO|MACRO]]&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Toni</name></author>
	</entry>
	<entry>
		<id>https://mediawiki.kfs.oeaw.ac.at/stx/docs/wiki/index.php?title=Programmer_Guide/Command_Reference/GOSUBX&amp;diff=8695&amp;oldid=prev</id>
		<title>Toni at 07:50, 25 January 2016</title>
		<link rel="alternate" type="text/html" href="https://mediawiki.kfs.oeaw.ac.at/stx/docs/wiki/index.php?title=Programmer_Guide/Command_Reference/GOSUBX&amp;diff=8695&amp;oldid=prev"/>
		<updated>2016-01-25T07:50:59Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 09:50, 25 January 2016&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l1&quot;&gt;Line 1:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 1:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  GOSUBX &amp;lt;var&amp;gt;subrlabel&amp;lt;/var&amp;gt; [&amp;lt;var&amp;gt;arguments&amp;lt;/var&amp;gt;]&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  GOSUBX &amp;lt;var&amp;gt;subrlabel&amp;lt;/var&amp;gt; [&amp;lt;var&amp;gt;arguments&amp;lt;/var&amp;gt;]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Like the &amp;lt;code&amp;gt;[[Programmer Guide/Command Reference/GOSUB|GOSUB ]]&amp;lt;/code&amp;gt; statement, &amp;lt;code&amp;gt;GOSUBX&amp;lt;/code&amp;gt; will call the local subroutine starting at the &amp;lt;var&amp;gt;subrlabel&amp;lt;/var&amp;gt; label, and mandatorily ending with an appropriate [[Programmer_Guide/Command_Reference/EXIT|EXIT]] statement. Note that, unlike the plain &amp;lt;code&amp;gt;[[Programmer Guide/Command Reference/GOSUB|GOSUB]]&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;GOSUBX&amp;lt;/code&amp;gt; will &#039;&#039;not&#039;&#039; create a new &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;execution environment&lt;/del&gt;, instead &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;executing &lt;/del&gt;the subroutine &#039;&#039;in the &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;execution environment &lt;/del&gt;of the caller&#039;&#039;, meaning that any changes to local variables done in the subroutine will be &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&#039;&#039;permanent&#039;&#039; and, hence, &lt;/del&gt;visible to the caller.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Like the &amp;lt;code&amp;gt;[[Programmer Guide/Command Reference/GOSUB|GOSUB ]]&amp;lt;/code&amp;gt; statement, &amp;lt;code&amp;gt;GOSUBX&amp;lt;/code&amp;gt; will call the local subroutine starting at the &amp;lt;var&amp;gt;subrlabel&amp;lt;/var&amp;gt; label, and mandatorily ending with an appropriate [[Programmer_Guide/Command_Reference/EXIT|EXIT]] statement. Note that, unlike the plain &amp;lt;code&amp;gt;[[Programmer Guide/Command Reference/GOSUB|GOSUB]]&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;GOSUBX&amp;lt;/code&amp;gt; will &#039;&#039;not&#039;&#039; create a new &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;local varible space&lt;/ins&gt;, instead the subroutine &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;use &lt;/ins&gt;&#039;&#039;in the &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;local variable space &lt;/ins&gt;of the caller&#039;&#039;, meaning that any changes to local variables done in the subroutine will &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;also &lt;/ins&gt;be visible to the caller.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;For this reason, the &amp;lt;code&amp;gt;GOSUBX&amp;lt;/code&amp;gt; statement can can be a useful tool if numerous arguments and data need to be passed &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;hither and thither&lt;/del&gt;, but it should be used with &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;extreme &lt;/del&gt;care, because changing the variables of the callers may be done as easily unintentionally.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;For this reason, the &amp;lt;code&amp;gt;GOSUBX&amp;lt;/code&amp;gt; statement can can be a useful tool if numerous arguments and data need to be passed &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;or for other reasons&lt;/ins&gt;, but it should be used with care, because changing the variables of the callers may be done as easily unintentionally.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Toni</name></author>
	</entry>
	<entry>
		<id>https://mediawiki.kfs.oeaw.ac.at/stx/docs/wiki/index.php?title=Programmer_Guide/Command_Reference/GOSUBX&amp;diff=3596&amp;oldid=prev</id>
		<title>Toni at 17:49, 13 April 2011</title>
		<link rel="alternate" type="text/html" href="https://mediawiki.kfs.oeaw.ac.at/stx/docs/wiki/index.php?title=Programmer_Guide/Command_Reference/GOSUBX&amp;diff=3596&amp;oldid=prev"/>
		<updated>2011-04-13T17:49:39Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 19:49, 13 April 2011&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l1&quot;&gt;Line 1:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 1:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  GOSUBX &amp;lt;var&amp;gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;subroutine&lt;/del&gt;&amp;lt;/var&amp;gt; [&amp;lt;var&amp;gt;arguments&amp;lt;/var&amp;gt;]&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  GOSUBX &amp;lt;var&amp;gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;subrlabel&lt;/ins&gt;&amp;lt;/var&amp;gt; [&amp;lt;var&amp;gt;arguments&amp;lt;/var&amp;gt;]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Like the &amp;lt;code&amp;gt;[[Programmer Guide/Command Reference/GOSUB|GOSUB ]]&amp;lt;/code&amp;gt; statement, &amp;lt;code&amp;gt;GOSUBX&amp;lt;/code&amp;gt; will call the local subroutine starting at the &amp;lt;var&amp;gt;subrlabel&amp;lt;/var&amp;gt; label, and mandatorily ending with an appropriate [[Programmer_Guide/Command_Reference/EXIT|EXIT]] statement. Note that, unlike the plain &amp;lt;code&amp;gt;[[Programmer Guide/Command Reference/GOSUB|GOSUB]]&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;GOSUBX&amp;lt;/code&amp;gt; will &amp;#039;&amp;#039;not&amp;#039;&amp;#039; create a new execution environment, instead executing the subroutine &amp;#039;&amp;#039;in the execution environment of the caller&amp;#039;&amp;#039;, meaning that any changes to local variables done in the subroutine will be &amp;#039;&amp;#039;permanent&amp;#039;&amp;#039; and, hence, visible to the caller.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Like the &amp;lt;code&amp;gt;[[Programmer Guide/Command Reference/GOSUB|GOSUB ]]&amp;lt;/code&amp;gt; statement, &amp;lt;code&amp;gt;GOSUBX&amp;lt;/code&amp;gt; will call the local subroutine starting at the &amp;lt;var&amp;gt;subrlabel&amp;lt;/var&amp;gt; label, and mandatorily ending with an appropriate [[Programmer_Guide/Command_Reference/EXIT|EXIT]] statement. Note that, unlike the plain &amp;lt;code&amp;gt;[[Programmer Guide/Command Reference/GOSUB|GOSUB]]&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;GOSUBX&amp;lt;/code&amp;gt; will &amp;#039;&amp;#039;not&amp;#039;&amp;#039; create a new execution environment, instead executing the subroutine &amp;#039;&amp;#039;in the execution environment of the caller&amp;#039;&amp;#039;, meaning that any changes to local variables done in the subroutine will be &amp;#039;&amp;#039;permanent&amp;#039;&amp;#039; and, hence, visible to the caller.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;For this reason, the &amp;lt;code&amp;gt;GOSUBX&amp;lt;/code&amp;gt; statement can can be a useful tool if numerous arguments and data need to be passed hither and thither, but it should be used with extreme care, because changing the variables of the callers may be done as easily unintentionally.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;For this reason, the &amp;lt;code&amp;gt;GOSUBX&amp;lt;/code&amp;gt; statement can can be a useful tool if numerous arguments and data need to be passed hither and thither, but it should be used with extreme care, because changing the variables of the callers may be done as easily unintentionally.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Toni</name></author>
	</entry>
	<entry>
		<id>https://mediawiki.kfs.oeaw.ac.at/stx/docs/wiki/index.php?title=Programmer_Guide/Command_Reference/GOSUBX&amp;diff=2298&amp;oldid=prev</id>
		<title>Christian at 15:46, 23 March 2011</title>
		<link rel="alternate" type="text/html" href="https://mediawiki.kfs.oeaw.ac.at/stx/docs/wiki/index.php?title=Programmer_Guide/Command_Reference/GOSUBX&amp;diff=2298&amp;oldid=prev"/>
		<updated>2011-03-23T15:46:26Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 17:46, 23 March 2011&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l1&quot;&gt;Line 1:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 1:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;code&amp;gt;&lt;/del&gt;GOSUBX &amp;lt;var&amp;gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;label&lt;/del&gt;&amp;lt;/var&amp;gt; [&amp;lt;var&amp;gt;arguments&amp;lt;/var&amp;gt;]&amp;lt;/code&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt; &lt;/ins&gt;GOSUBX &amp;lt;var&amp;gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;subroutine&lt;/ins&gt;&amp;lt;/var&amp;gt; [&amp;lt;var&amp;gt;arguments&amp;lt;/var&amp;gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;]&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;:Like &lt;/del&gt;&amp;lt;code&amp;gt;GOSUB&amp;lt;/code&amp;gt; &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;but no &lt;/del&gt;new &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;variable namespace is created (i.e. &lt;/del&gt;the subroutine &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;uses &lt;/del&gt;the &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;same &lt;/del&gt;environment &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;as &lt;/del&gt;the caller&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;)&lt;/del&gt;. &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;This feature &lt;/del&gt;can be useful if numerous arguments and data need to be passed &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;or shared&lt;/del&gt;, but it should be used with care, because the &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;subroutine can change &lt;/del&gt;the &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;caller&#039;s variables. The [[Programmer_Guide/Command_Reference/MACRO_and_SHELL|MACROX]] command implements a comparable feature&lt;/del&gt;.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Like the &amp;lt;code&amp;gt;[[Programmer Guide/Command Reference/GOSUB|GOSUB ]&lt;/ins&gt;]&amp;lt;/code&amp;gt; &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;statement, &amp;lt;code&amp;gt;GOSUBX&amp;lt;/code&amp;gt; will call the local subroutine starting at the &amp;lt;var&amp;gt;subrlabel&amp;lt;/var&amp;gt; label, and mandatorily ending with an appropriate [[Programmer_Guide/Command_Reference/EXIT|EXIT]] statement. Note that, unlike the plain &lt;/ins&gt;&amp;lt;code&amp;gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[[Programmer Guide/Command Reference/&lt;/ins&gt;GOSUB&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;|GOSUB]]&lt;/ins&gt;&amp;lt;/code&amp;gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;, &amp;lt;code&amp;gt;GOSUBX&amp;lt;/code&amp;gt; will &#039;&#039;not&#039;&#039; create a &lt;/ins&gt;new &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;execution environment, instead executing &lt;/ins&gt;the subroutine &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&#039;&#039;in &lt;/ins&gt;the &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;execution &lt;/ins&gt;environment &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;of the caller&#039;&#039;, meaning that any changes to local variables done in the subroutine will be &#039;&#039;permanent&#039;&#039; and, hence, visible to &lt;/ins&gt;the caller.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt; &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;For this reason, the &amp;lt;code&amp;gt;GOSUBX&amp;lt;/code&amp;gt; statement can &lt;/ins&gt;can be &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;a &lt;/ins&gt;useful &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;tool &lt;/ins&gt;if numerous arguments and data need to be passed &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;hither and thither&lt;/ins&gt;, but it should be used with &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;extreme &lt;/ins&gt;care, because &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;changing &lt;/ins&gt;the &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;variables of &lt;/ins&gt;the &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;callers may be done as easily unintentionally&lt;/ins&gt;.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Christian</name></author>
	</entry>
	<entry>
		<id>https://mediawiki.kfs.oeaw.ac.at/stx/docs/wiki/index.php?title=Programmer_Guide/Command_Reference/GOSUBX&amp;diff=2292&amp;oldid=prev</id>
		<title>Christian: Created page with &#039;&lt;code&gt;GOSUBX &lt;var&gt;label&lt;/var&gt; [&lt;var&gt;arguments&lt;/var&gt;]&lt;/code&gt; :Like &lt;code&gt;GOSUB&lt;/code&gt; but no new variable namespace is created (i.e. the subroutine uses the same environment as th…&#039;</title>
		<link rel="alternate" type="text/html" href="https://mediawiki.kfs.oeaw.ac.at/stx/docs/wiki/index.php?title=Programmer_Guide/Command_Reference/GOSUBX&amp;diff=2292&amp;oldid=prev"/>
		<updated>2011-03-23T15:31:19Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;#039;&amp;lt;code&amp;gt;GOSUBX &amp;lt;var&amp;gt;label&amp;lt;/var&amp;gt; [&amp;lt;var&amp;gt;arguments&amp;lt;/var&amp;gt;]&amp;lt;/code&amp;gt; :Like &amp;lt;code&amp;gt;GOSUB&amp;lt;/code&amp;gt; but no new variable namespace is created (i.e. the subroutine uses the same environment as th…&amp;#039;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&amp;lt;code&amp;gt;GOSUBX &amp;lt;var&amp;gt;label&amp;lt;/var&amp;gt; [&amp;lt;var&amp;gt;arguments&amp;lt;/var&amp;gt;]&amp;lt;/code&amp;gt;&lt;br /&gt;
:Like &amp;lt;code&amp;gt;GOSUB&amp;lt;/code&amp;gt; but no new variable namespace is created (i.e. the subroutine uses the same environment as the caller). This feature can be useful if numerous arguments and data need to be passed or shared, but it should be used with care, because the subroutine can change the caller&amp;#039;s variables. The [[Programmer_Guide/Command_Reference/MACRO_and_SHELL|MACROX]] command implements a comparable feature.&lt;/div&gt;</summary>
		<author><name>Christian</name></author>
	</entry>
</feed>