@main[]
$n(1)
code junctions ignore in expression flag, this it works:
$x(^if(2){^n.int[]^n.int[]})
$x
this code will work if OPTIMIZE_CALL is undefined after OP_PREPARE_TO_EXPRESSION removed (#1104):
^try-catch{ $y(^test[]) }
$y
this code does not work in 3.4.4:
^try-catch{ $z(^test-wrapper[]) }
$z
string and value: $s(^test-string[]) $s $s.CLASS_NAME
string and object: $s[^test-object[]] $s.CLASS_NAME
#test is in expression + CO_WITHOUT_WCONTEXT is on by default, thus exception
@test[]
^n.int[]^n.int[]
#wrapper hides in expression flag, thus no more exception after OP_PREPARE_TO_EXPRESSION removed
@test-wrapper[]
^test[]
@test-string[]
string value (even non-whitespace!) is ignored if value (^n.int[]) is returned.
@test-object[]
same thing in string context if object (^hash::create[]) is returned.
E-mail: