Return (From Gosub)

Control flow statement to return from a procedure or KeyPgGosubGoSub.

Syntax
	Return [ label ]

Description
	Return is used to return from a gosub KeyPgGosubGoSub.

	Because Return could mean return-from-gosub or return-from-procedure, 
	KeyPgOptiongosubOption Gosub and KeyPgOptionnogosubOption Nogosub can be used to enable and disable KeyPgGosubGoSub 
	support.  When KeyPgGosubGoSub support is disabled, KeyPgReturnReturn is then recognized as 
	return-from-procedure.  When KeyPgGosubGoSub support is enabled, KeyPgReturnGosubReturn is then 
	recognized as return-from-gosub.

	Return (from gosub) is used to return control back to the statement 
	immediately following a previous KeyPgGosubGoSub call. When used in combination 
	with KeyPgGosubGoSub, no return value can be specified.  If the optional label is 
	specified, execution continues at the specified label.  If no KeyPgGosubGoSub was 
	made, a runtime error is generated, and execution continues immediately 
	after Return.

	A KeyPgGosubGoSub should always have a matching Return statement.  However, if 
	Return (from gosub) is used where no KeyPgGosubGoSub was made, a run-time error is 
	generated.

Example
	'' GOSUB & RETURN example, compile with "-lang qb" or use "$lang" as below

	'$lang: "qb"

	Print "Let's Gosub!"
	GoSub MyGosub
	Print "Back from Gosub!"
	Sleep
	End

	MyGosub:
	Print "In Gosub!"
	Return

Dialect Differences
	* In the CompilerOptlang-lang fb dialect Return always means return-from-procedure.
	* In the CompilerOptlang-lang qb dialect, Return means return-from-gosub by default 
	  unless changed with KeyPgOptionnogosubOption Nogosub, in which case the compiler will 
	  recognize Return as return-from-procedure.
	* In the CompilerOptlang-lang fblite dialect, Return means return-from-procedure by 
	  default unless changed with KeyPgOptiongosubOption Gosub, in which case the compiler 
	  will recognize Return as return-from-gosub.

Differences from QB
	* None when using the CompilerOptlang-lang qb dialect.

See also
	* KeyPgSubSub
	* KeyPgFunctionFunction
	* KeyPgGosubGoSub
	* KeyPgOptiongosubOption Gosub
	* KeyPgOptionnogosubOption Nogosub
	* ProPgLabelsLabels
	* KeyPgReturnReturn (From Procedure)

