You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I noticed that TruffleRuby deviates from CRuby when an exception inherits from an Errno exception. The inherited Errno message (ex: No such file or directory) becomes lost.
@bjfish Could you look into this?
I think this condition is problematic: if error && error.class.equal?(self) and I guess we need to pass the self (the exception class) to SystemCallError.errno_error. The other usage of SystemCallError.errno_error doesn't know the correct class so we should probably split the logic to map errno->class to a separate Primitive.
Actually it might already work by changing error.class.equal?(self) to something like Primitive.object_kind_of?(error, self) since there is a super(*args) call which might deal fine with such cases.
I noticed that TruffleRuby deviates from CRuby when an exception inherits from an Errno exception. The inherited Errno message (ex:
No such file or directory
) becomes lost.Example
CRuby (3.0.2)
TruffleRuby (21.3.0)
The text was updated successfully, but these errors were encountered: