Difference between revisions of "sGoto"

From Lazarus wiki
Jump to navigationJump to search
(English translation of German page)
 
m (Fix typo)
 
Line 18: Line 18:
  
 
<syntaxhighlight lang=pascal>
 
<syntaxhighlight lang=pascal>
   {$ GOTO ON}
+
   {$GOTO ON}
  
 
  label TheEnd;
 
  label TheEnd;

Latest revision as of 13:09, 16 February 2020

Deutsch (de) English (en)


Back to local compiler directives.


$GOTO

The $GOTO directive:

  • determines whether jump commands can be used;
  • knows the ON and OFF switches;
  • defaults to {$GOTO OFF}. That is, no jump commands are allowed;
  • can be enabled if the directive is {$GOTO ON}, the compiler supports the GOTO and LABEL commands;
  • corresponds to the -Sg command line switch.

Example:

  {$GOTO ON}

 label TheEnd;

 begin
   If ParamCount = 0 then
     GoTo TheEnd;
   Writeln('Parameters were passed on the command line');
 TheEnd:
 end.

Note for inline assembler: If labels are used in the assembly code, the directive {$GOTO ON} must be used.