# Code Review: MiscFixes.2

**URL:** <https://www.ruby-forum.com/t/code-review-miscfixes-2/162119>\
**Category:** IronRuby\
**Created:** [March 5, 2009, 10:50pm UTC](https://www.ruby-forum.com/t/code-review-miscfixes-2/162119 "2009-03-05T22:50:23Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![grujildo](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/g/94ad74/32.png) [@grujildo](https://www.ruby-forum.com/u/grujildo)\
**Post date:** [March 5, 2009, 10:50pm UTC](https://www.ruby-forum.com/t/code-review-miscfixes-2/162119/1 "2009-03-05T22:50:23Z")

</div>

tfpt review “/shelveset:MiscFixes.2;REDMOND\tomat”  
Comment :  
(MiscFixes.2)

Fixes bugs:

- Protocols.IsEqual should compare references first before calling ==  
method.
- Exception#initialize should reset backtrace to nil.
- Exception#exception should not be special-cased for argument ==  
self (filed Ruby bug [http://redmine.ruby-lang.org/issues/show/1248](http://redmine.ruby-lang.org/issues/show/1248))
- Fixnum#\<\< handled overflow incorrectly.
- System::String inspect uses single quotes instead of double quotes  
to differentiate from Ruby string.
- Fixes L conversion in Array#unpack.

Adds RubyMetaObject and RubyMetaObject to handle functionality  
common for Ruby meta-objects and derives Proc.Meta and Method.Meta from  
RMO (more refactoring will follow).  
Implements a conversion from Proc/Method to an arbitrary delegate.  
Slightly refactors meta-object builder. More changes will follow.

Tomas
