On 10/01/2015 04:46 AM, John Colvin wrote:
Checks involving sensitive data after processing can definitely be a
check of program logic.

Sensitive data enters program
Sensitive data is checked using enforce
Sensitive data is passed to another function, but something goes wrong
(not enough checking before, wrong function called, HDD dies, someone
trips over a network cable), an assert is triggered, the sensitive data
spills to stderr.

I think worrying about this would be an exaggeration.

At the very least there should be a compiler switch to turn
assert-printing on/off

Please, no. Keep it simple and automatic. Zero-work improvement for the client.

Printing good messages in assertions is a good idea. For most ideas of sufficient complexity, situations can be imagined in which there are disadvantages. It has happened before in our community that good ideas didn't get worked on because a few folks dwelt on the disadvantages with too much vividness.

Whoever wants to work on better assert expression printing: make sure you specify which grammar constructs are supported, and how the parts involved are printed. Expressing semantics via lowering would be great. Write a DIP, discuss, implement. I'll have your six.


Andrei

Reply via email to