Bug 31738

GemStone/S

6.7.2.1, 6.7.2, 6.7.1, 6.7, 6.6.5, 6.6.4, 6.6.3.3, 6.6.3.2, 6.6.3, 6.6.2, 6.6.1, 6.6, 6.5.8, 6.5.7.5, 6.5.7, 6.5.6, 6.5.5, 6.5.4, 6.5.2, 6.5.1, 6.5, 6.3.1, 6.3, 6.2.x, 6.2, 6.1.6, 6.1.5, 6.1.x, 6.0.x, 5.1.5.1

All

Exception #rtErrDoesNotUnderstand can fail with SEGV

The following code sequence will generate a SEGV error:

    System enableSignaledAbortError.
    Exception undefinedMethod: arg1 next: arg2 next: arg3.

where:

1.  The undefined method is a method of 3 or more arguments that would
    normally generate an #rtErrDoesNotUnderstand error.
2.  One of the arguments passed to the method is a block containing a
    return value (for example: [ ^ nil ] ).

This obscure bug was uncovered from the following example (note accidental
captalization of "category"):

    System enableSignaledAbortError.
    Exception Category: nil number: 6009 do: [ ^ nil ].

Workaround

Don't do this.


                

Last updated: 4/4/05