Skip to content

Return From Gosub

Paul Squires edited this page Oct 14, 2026 · 2 revisions

Home › Control Flow Statements › Return (From Gosub)

Return (From Gosub)

Control flow statement to return from a procedure or GoSub.

Syntax

Return [ label ]

Description

Return is used to return from a gosub GoSub.

Because Return could mean return-from-gosub or return-from-procedure, Option Gosub and Option Nogosub can be used to enable and disable GoSub support. When GoSub support is disabled, Return is then recognized as return-from-procedure. When GoSub support is enabled, Return is then recognized as return-from-gosub.

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

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

Remarks

Dialect Differences

  • In the -lang fb dialect Return always means return-from-procedure. In the -lang qb dialect, Return means return-from-gosub by default unless changed with Option Nogosub, in which case the compiler will recognize Return as return-from-procedure.
    In the -lang fblite dialect, Return means return-from-procedure by default unless changed with Option Gosub, in which case the compiler will recognize Return as return-from-gosub.

Differences from QB

See also

Examples

'' 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

Category: Control Flow Statements
Kind: keyword


Reproduced from the FreeBASIC Wiki Manual under the GNU Free Documentation License 1.3 — with no Invariant Sections, no Front-Cover Texts and no Back-Cover Texts. Copyright © the FreeBASIC project and wiki contributors. See License.

Clone this wiki locally