Looks good. One small quibble: the comment in RubyModule.ForEachMember "visit the member even if it doesn''t have the right visibility so that any overridden member with the right visibility won''t later be visited" isn''t quite right as the member isn''t actually being visited; it''s just marked that way in the dict. :) -----Original Message----- From: Tomas Matousek Sent: Tuesday, June 02, 2009 2:55 PM To: IronRuby External Code Reviewers Cc: ironruby-core at rubyforge.org Subject: Code Review: VisibilityFixes1 tfpt review "/shelveset:VisibilityFixes1;REDMOND\tomat" Fixes bugs: http://ironruby.codeplex.com/WorkItem/View.aspx?WorkItemId=1184: public(:foo) does not work correctly for mixed-in methods http://ironruby.codeplex.com/WorkItem/View.aspx?WorkItemId=1060: visibility of send :define_method Title is required Factors super-forwarders into a separate SuperForwarderInfo <: RubyMemberInfo (it used to be just a flag on member info). The super-forwarder needs to remember the name of the method to forward to since that can change if it''s aliased (see Visibility2C test case). Tomas