[macruby-changes] [4407] MacRuby/trunk/vm_eval.c

source_changes at macosforge.org source_changes at macosforge.org
Thu Aug 5 01:12:52 PDT 2010


Revision: 4407
          http://trac.macosforge.org/projects/ruby/changeset/4407
Author:   lsansonetti at apple.com
Date:     2010-08-05 01:12:49 -0700 (Thu, 05 Aug 2010)
Log Message:
-----------
#instance_eval: don't attempt to create singleton classes on symbols

Modified Paths:
--------------
    MacRuby/trunk/vm_eval.c

Modified: MacRuby/trunk/vm_eval.c
===================================================================
--- MacRuby/trunk/vm_eval.c	2010-08-05 00:34:39 UTC (rev 4406)
+++ MacRuby/trunk/vm_eval.c	2010-08-05 08:12:49 UTC (rev 4407)
@@ -521,19 +521,16 @@
 {
     VALUE klass;
 
-    if (SPECIAL_CONST_P(self)) {
+    if (SPECIAL_CONST_P(self) || CLASS_OF(self) == rb_cSymbol) {
 	klass = 0;
     }
     else {
-	switch (TYPE(self)) {
-	    default:
-		klass = rb_singleton_class(self);
-		switch (TYPE(top)) {
-		    case T_CLASS:
-		    case T_MODULE:
-			rb_vm_set_outer(klass, top);
-			break;
-		}
+	klass = rb_singleton_class(self);
+	switch (TYPE(top)) {
+	    case T_CLASS:
+	    case T_MODULE:
+		rb_vm_set_outer(klass, top);
+		break;
 	}
     }
     return specific_eval(argc, argv, klass, self);
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/macruby-changes/attachments/20100805/80c139cb/attachment.html>


More information about the macruby-changes mailing list