[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

proposal #1 again

    Wouldn't it be more consistent to make the default behavior in the absence
    of optimize declarations *not* to require that the errors be signalled?
    The proposal is that the errors don't need to be signalled if the optimize
    safety setting is 0 or 1, and according to CLtL, the "usual" value of this
    parameter is 1.

The question of what should be required if a system ignores certain
declarations is not the same as what the default should be if the
declarations are not present.

If an implementation doesn't bother to check for optimize declarations,
it should make the conservative assumption and do the error checking.
If this were not the rule, proposal 1 would be meaningless.

You do raise an interesting point, however.  Since the default setting
of OPTIMIZE SAFETY is 1 in the absence of any declaration to the
contrary, maybe we should go back to requiring Class 2 errors to be
signalled unless SAFETY = 0.  It would be better to require the
signalling unless the user specifically authorizes the system to omit
such tests.

-- Scott