REBOL3 tracker
  0.9.12 beta
Ticket #0001002 User: anonymous

Project:



rss
TypeBug Statustested Date29-Jun-2009 13:39
Versionalpha 64 Categoryn/a Submitted bymeijeru
PlatformAll Severitycrash Priorityhigh

Summary MAKE ERROR! [CODE: integer] behaves erratically
Description In #975, I reported that probe make error! 1 gave a crash. This was solved in alpha 64.

The errors with code in range 0-99 are special. When one supplies their numbers in a block, number 1 still crashes, others either give an error or are well-behaved.

If it helps anything: #[error! [code: 1]] does NOT crash
Example code
>> probe make error! [code: 0]
** Script error: invalid argument: [code: 0]
>> probe make error! [code: 2]
** Throw error: no catch for throw: make error! 2
>> probe make error! [code: 1]
==
REBOL System Error #1305: invalid datatype 88
This should never happen

Assigned ton/a Fixed inalpha 65 Last Update30-Jun-2009 02:25


Comments
(0001121)
BrianH
29-Jun-2009 18:19

Errors < 100 are supposed to only be generated by RETURN, EXIT, THROW, BREAK, CONTINUE, QUIT and HALT. It would probably be a good idea to block their creation by the MAKE error! action or the serialized constructor #[error! 1] or #[error! [code: 1]], since otherwise would be a security hole.

If there is any way to block errors < 100 in REBOL syntax without breaking the functions that are supposed to throw them, that would be preferable.
(0001127)
Carl
29-Jun-2009 19:13

Yes, I think that's possible, and it makes sense.

Normally for most datatypes I favor fewer restrictive cases (even if trivial or almost meaningless), but errors are rather special.
(0001148)
BrianH
30-Jun-2009 02:25

Note that this now generates an error, but no longer crashes.

Date User Field Action Change
30-Jun-2009 02:25 BrianH Comment : 0001148 Added -
29-Jun-2009 22:44 BrianH Status Modified built => tested
29-Jun-2009 19:39 carl Fixedin Modified => alpha 65
29-Jun-2009 19:39 carl Status Modified reviewed => built
29-Jun-2009 19:13 carl Comment : 0001127 Added -
29-Jun-2009 18:19 BrianH Comment : 0001121 Added -
29-Jun-2009 18:12 BrianH Status Modified submitted => reviewed
29-Jun-2009 18:12 BrianH Priority Modified normal => high
29-Jun-2009 14:09 meijeru Description Modified -
29-Jun-2009 14:09 meijeru Code Modified -
29-Jun-2009 13:39 meijeru Ticket Added -