hi there,
while experimenting i discovered in an o2-example of Aurel using Scintilla...AsciiEdit.o2bas some strange appearing construction that i thought could not work
He's calling
so i searched for the matching label "Oxykeywords:" as first token on a line - none
then i thought about "Subroutines" that as far as i know are sub-sequent portions of the procedure where also the calling "Gosub" should be inside
alike
Procedure someProc()
...
goSub mySubroutine
...
Exit Procedure
#Ifdef use_Label
mySubroutine:
#Else
Subroutine mySubroutine
#EndIf
' do whatever
Retn
#Ifndef use_Label
End Subroutine
#EndIf
End someProc
I thought this were the way of using Gosub but Aurels program calls Gousb on global level and that launches a Sub (also on global scope level).
...not within any procedure here,around line 120..130
Gosub Qxykeywords
'...
' and about 1050 lines below
Sub Oxykeywords
...
' no "retn" anyhwere...
End Sub
that is a bit confusing why could it work?
Is it because of a rule as the caller is on global scope and can call a procedure (instead of a subroutine) on global level too (since it appears as a far-call to me)
or
does oxygen just prioritize trying anything to resolve the target-location before it must raise an error?
Is that still supported/deprecated/adviseable discouraged?
Bookmarks