REBOL3 tracker
  0.9.12 beta
Ticket #0002243 User: anonymous

Project:

Previous Next
rss
TypeBug Statusreviewed Date13-Aug-2015 17:55
Versionr3 master CategoryUnspecified Submitted byfork
PlatformAll Severityminor Prioritynormal

Summary Path evaluation does not process THROWN values as THROWN
Description When a THROW/BREAK/CONTINUE happens inside paren code in a path, it attempts to use the thrown error as the selection key.

It should probably interrupt the evaluation such that the thrown value "bubbles up" out of the path. Hence FOO/(THROW "SOMETHING" 'BAR) would in effect do the same thing as SELECT FOO (THROW "SOMETHING" 'BAR)
Example code
>> foo: object [bar: 10]
== make object! [
    bar: 10
]

>> foo/('bar)
== 10

>> foo/(throw "something" 'bar)
** Script error: cannot access (throw "something" 'bar) in path foo/(throw "something" 'bar)

;-- expected "unhandled throw"

Assigned ton/a Fixed in- Last Update14-Sep-2015 09:22


Comments

Date User Field Action Change
14-Sep-2015 09:22 abolka Status Modified submitted => reviewed
13-Aug-2015 23:08 Fork Code Modified -
13-Aug-2015 21:25 Fork Description Modified -
13-Aug-2015 21:25 Fork Code Modified -
13-Aug-2015 17:55 Fork Ticket Added -