in reply to 'return:' instead of 'return'
The construct is interpreted as a label, as the following code shows:
sub fn { return: 3; print 'code after return?' }; fn()
As the return value of a function is the last expression evaluated, the value of your constant block, 3, is returned.
|
|---|