[macruby-changes] [385] MacRuby/branches/lrz_unstable
source_changes at macosforge.org
source_changes at macosforge.org
Wed Jul 30 00:47:30 PDT 2008
Revision: 385
http://trac.macosforge.org/projects/ruby/changeset/385
Author: lsansonetti at apple.com
Date: 2008-07-30 00:47:29 -0700 (Wed, 30 Jul 2008)
Log Message:
-----------
wip
Modified Paths:
--------------
MacRuby/branches/lrz_unstable/include/ruby/defines.h
MacRuby/branches/lrz_unstable/include/ruby/ruby.h
MacRuby/branches/lrz_unstable/st.c
MacRuby/branches/lrz_unstable/vm_eval.c
Modified: MacRuby/branches/lrz_unstable/include/ruby/defines.h
===================================================================
--- MacRuby/branches/lrz_unstable/include/ruby/defines.h 2008-07-30 07:26:13 UTC (rev 384)
+++ MacRuby/branches/lrz_unstable/include/ruby/defines.h 2008-07-30 07:47:29 UTC (rev 385)
@@ -296,7 +296,7 @@
void rb_objc_wb(void *dst, void *newval);
void rb_objc_wb_range(void *dest, size_t len);
void rb_objc_root(void *addr);
-# define GC_WB(dst, newval) (rb_objc_wb((void *)dst, (void *)newval))
+# define GC_WB(dst, newval) (SPECIAL_CONST_P(newval) ? *(void **)dst = (void *)newval : rb_objc_wb((void *)dst, (void *)newval))
# define GC_ROOT(dst) (rb_objc_root((void *)dst))
# define GC_WEAK(dst) (rb_objc_weak((void *)dst))
#else
Modified: MacRuby/branches/lrz_unstable/include/ruby/ruby.h
===================================================================
--- MacRuby/branches/lrz_unstable/include/ruby/ruby.h 2008-07-30 07:26:13 UTC (rev 384)
+++ MacRuby/branches/lrz_unstable/include/ruby/ruby.h 2008-07-30 07:47:29 UTC (rev 385)
@@ -780,7 +780,7 @@
#define FL_REVERSE(x,f) do {if (FL_ABLE(x)) RBASIC(x)->flags ^= (f);} while (0)
#if WITH_OBJC
-# define OBJ_TAINTED(x) (rb_obj_tainted((VALUE)x))
+# define OBJ_TAINTED(x) (SPECIAL_CONST_P(x) || NATIVE(x) ? rb_obj_tainted((VALUE)x) : FL_TEST((x), FL_TAINT))
# define OBJ_TAINT(x) (rb_obj_taint((VALUE)x))
#else
# define OBJ_TAINTED(x) FL_TEST((x), FL_TAINT)
@@ -790,7 +790,7 @@
#define OBJ_INFECT(x,s) do {if (FL_ABLE(x) && FL_ABLE(s)) RBASIC(x)->flags |= RBASIC(s)->flags & FL_TAINT;} while (0)
#if WITH_OBJC
-# define OBJ_FROZEN(x) (rb_obj_frozen_p((VALUE)x))
+# define OBJ_FROZEN(x) (SPECIAL_CONST_P(x) || NATIVE(x) ? rb_obj_frozen_p((VALUE)x) : FL_TEST((x), FL_FREEZE))
# define OBJ_FREEZE(x) (rb_obj_freeze((VALUE)x))
#else
# define OBJ_FROZEN(x) FL_TEST((x), FL_FREEZE)
Modified: MacRuby/branches/lrz_unstable/st.c
===================================================================
--- MacRuby/branches/lrz_unstable/st.c 2008-07-30 07:26:13 UTC (rev 384)
+++ MacRuby/branches/lrz_unstable/st.c 2008-07-30 07:47:29 UTC (rev 385)
@@ -9,6 +9,7 @@
#include "ruby/config.h"
#include "ruby/defines.h"
#include "ruby/st.h"
+#include "ruby/ruby.h"
#endif
#include <stdio.h>
Modified: MacRuby/branches/lrz_unstable/vm_eval.c
===================================================================
--- MacRuby/branches/lrz_unstable/vm_eval.c 2008-07-30 07:26:13 UTC (rev 384)
+++ MacRuby/branches/lrz_unstable/vm_eval.c 2008-07-30 07:47:29 UTC (rev 385)
@@ -200,8 +200,7 @@
method = rb_objc_method_node(klass, mid, &imp, &sel);
if (imp != NULL && method == NULL) {
- printf("OBJC_CALL!\n");
- assert(1==0);
+ return rb_objc_call(recv, sel, argc, (VALUE *)argv);
}
else if (method != NULL) {
noex = method->nd_noex;
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.macosforge.org/pipermail/macruby-changes/attachments/20080730/0909b936/attachment-0001.html
More information about the macruby-changes
mailing list