RX0366

Domain: Execution

Error message

%s: a value's rendering did not fit the bytes sized for it (%s)

In the message, %s marks a value that the engine fills in when it raises the error.

The story

Rush just caught an internal disagreement, and it chose to stop instead of hiding it. Here is what happened. When a door needs to carry a value as text, it works in two steps. First, it asks the value-to-text door: how wide will this value be, once written out? It is lent exactly that many bytes. Second, it renders the value into them. If everything is consistent, the fit is perfect. This error means it was not. The rendering came out larger than the answer given in step one. So two readings of the same value disagreed. The tempting move is to clip the text at the end of the space and move on, but a clipped value is a different value, and different values cause wrong answers far away from the cause. So rush refuses, and the second slot names what was being rendered. This is not a mistake you can make in a script. It is a defect inside the engine, and the message was designed to show you exactly where. Report it together with the name in the slot.

Text from the Rush engine's error catalogue.