RX0059

Domain: Execution

Error message

%s holds a member that is not a number: %s

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

The story

You asked for the sum of a collection, and one of its members is not a number. Sum adds up numbers, exactly, and nothing else. So what counts as a non number? A text, a truth value, null, or even another collection nested inside. And here is one that surprises people: a number in quotes is a text. The quoted five is not a five. Rush never converts quietly. The old engine treated these members as zero and carried on. But that means the total lies about the list, and you would never know. A list of one, two, and a quoted three would give you three instead of six, and that is wrong without a single warning. Now the engine refuses and names the collection, and also the member it found, exactly as the heap holds it. So you can find it right away. The fix: clean the list so every member is a number. If a value arrives as text, convert it first, on purpose, then sum. Honest input gives honest totals.

Text from the Rush engine's error catalogue.