Skip to content
Browse files

matz

git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@908 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
  • Loading branch information...
1 parent 615efd0 commit 5cc08a4c23421f8cc89d400d522e572223a61501 matz committed Aug 29, 2000
Showing with 31 additions and 40 deletions.
  1. +8 −1 ChangeLog
  2. +1 −6 ToDo
  3. +1 −14 eval.c
  4. +6 −1 ext/extmk.rb.in
  5. +0 −1 gc.c
  6. +10 −4 lib/mkmf.rb
  7. +0 −2 node.h
  8. +3 −9 parse.y
  9. +2 −2 version.h
View
9 ChangeLog
@@ -1,3 +1,9 @@
+Tue Aug 29 02:02:14 2000 Yukihiro Matsumoto <matz@ruby-lang.org>
+
+ * lib/mkmf.rb (create_makefile): handles create_makefile("a/b").
+
+ * ext/extmk.rb.in (create_makefile): ditto
+
Mon Aug 28 18:43:54 2000 Yukihiro Matsumoto <matz@ruby-lang.org>
* eval.c (is_defined): now handles class variables.
@@ -9,7 +15,8 @@ Mon Aug 28 18:43:54 2000 Yukihiro Matsumoto <matz@ruby-lang.org>
* parse.y (gettable): ditto.
* regex.c (PUSH_FAILURE_COUNT): push/pop interval count on failure
- stack.
+ stack. this fix is inspired by the Emacs21 patch from Stefan
+ Monnier <monnier@cs.yale.edu>.
Fri Aug 25 15:24:39 2000 Yukihiro Matsumoto <matz@ruby-lang.org>
View
7 ToDo
@@ -90,6 +90,7 @@ Standard Libraries
* Ruby module -- Ruby::Version, Ruby::Interpreter
* introduce Boolean class; super of TrueClass, FalseClass
* Process::waitall [ruby-talk:4557]
+* synchronized method - synchronized{...}, synchronized :foo, :bar
Extension Libraries
@@ -114,9 +115,3 @@ Misc
- publish Ruby books
* publish Ruby books in English
-
-Things To Do Before 1.6
-
-* fix spec. for the following:
-
- * mkmf.rb - create_makefile("net/socket")
View
15 eval.c
@@ -1719,7 +1719,6 @@ is_defined(self, node, buf)
case NODE_GASGN:
case NODE_CDECL:
case NODE_CVDECL:
- case NODE_CVASGN:
case NODE_CVASGN2:
case NODE_CVASGN3:
return "assignment";
@@ -2583,14 +2582,6 @@ rb_eval(self, n)
rb_const_set(ruby_class, node->nd_vid, result);
break;
- case NODE_CVASGN:
- if (NIL_P(ruby_cbase)) {
- rb_raise(rb_eTypeError, "no class/module to define class variable");
- }
- result = rb_eval(self, node->nd_value);
- rb_cvar_set(ruby_cbase, node->nd_vid, result);
- break;
-
case NODE_CVASGN2:
result = rb_eval(self, node->nd_value);
rb_cvar_set(CLASS_OF(self), node->nd_vid, result);
@@ -3620,10 +3611,6 @@ assign(self, lhs, val, check)
rb_cvar_declare(ruby_cbase, lhs->nd_vid, val);
break;
- case NODE_CVASGN:
- rb_cvar_set(ruby_cbase, lhs->nd_vid, val);
- break;
-
case NODE_CVASGN2:
rb_cvar_set(CLASS_OF(self), lhs->nd_vid, val);
break;
@@ -5058,7 +5045,7 @@ rb_f_require(obj, fname)
volatile int safe = ruby_safe_level;
Check_SafeStr(fname);
- if (rb_thread_loading(RSTRING(fname)->ptr)) return Qfalse;
+ if (rb_provided(RSTRING(fname)->ptr)) return Qfalse;
ext = strrchr(RSTRING(fname)->ptr, '.');
if (ext) {
View
7 ext/extmk.rb.in
@@ -337,7 +337,12 @@ end
def create_makefile(target)
$target = target
-
+ if target.rindex(%r!/!)
+ target = $'
+ target_prefix = "/"+$`
+ else
+ target_prefix = ""
+ end
rm_f "conftest*"
if "@DLEXT@" == $OBJEXT
libs = $libs.split
View
1 gc.c
@@ -483,7 +483,6 @@ rb_gc_mark(ptr)
case NODE_IASGN:
case NODE_CDECL:
case NODE_CVDECL:
- case NODE_CVASGN:
case NODE_CVASGN2:
case NODE_CVASGN3:
case NODE_MODULE:
View
14 lib/mkmf.rb
@@ -341,6 +341,12 @@ def create_makefile(target)
print "creating Makefile\n"
rm_f "conftest*"
STDOUT.flush
+ if target.rindex(%r!/!)
+ target = $'
+ target_prefix = "/"+$`
+ else
+ target_prefix = ""
+ end
if CONFIG["DLEXT"] == $OBJEXT
libs = $libs.split
for lib in libs
@@ -402,10 +408,10 @@ def create_makefile(target)
DESTDIR =
prefix = $(DESTDIR)#{CONFIG["prefix"]}
exec_prefix = $(DESTDIR)#{CONFIG["exec_prefix"]}
-libdir = $(DESTDIR)#{$libdir}
-archdir = $(DESTDIR)#{$archdir}
-sitelibdir = $(DESTDIR)#{$sitelibdir}
-sitearchdir = $(DESTDIR)#{$sitearchdir}
+libdir = $(DESTDIR)#{$libdir}#{target_prefix}
+archdir = $(DESTDIR)#{$archdir}#{target_prefix}
+sitelibdir = $(DESTDIR)#{$sitelibdir}#{target_prefix}
+sitearchdir = $(DESTDIR)#{$sitearchdir}#{target_prefix}
#### End of system configuration section. ####
View
2 node.h
@@ -49,7 +49,6 @@ enum node_type {
NODE_GASGN,
NODE_IASGN,
NODE_CDECL,
- NODE_CVASGN,
NODE_CVASGN2,
NODE_CVASGN3,
NODE_CVDECL,
@@ -270,7 +269,6 @@ typedef struct RNode {
#define NEW_DASGN_CURR(v,val) rb_node_newnode(NODE_DASGN_CURR,v,val,0);
#define NEW_IASGN(v,val) rb_node_newnode(NODE_IASGN,v,val,0)
#define NEW_CDECL(v,val) rb_node_newnode(NODE_CDECL,v,val,0)
-#define NEW_CVASGN(v,val) rb_node_newnode(NODE_CVASGN,v,val,0)
#define NEW_CVASGN2(v,val) rb_node_newnode(NODE_CVASGN2,v,val,0)
#define NEW_CVASGN3(v,val) rb_node_newnode(NODE_CVASGN3,v,val,0)
#define NEW_CVDECL(v,val) rb_node_newnode(NODE_CVDECL,v,val,0)
View
12 parse.y
@@ -3945,9 +3945,8 @@ gettable(id)
}
else if (is_class_id(id)) {
if (in_single) return NEW_CVAR3(id);
- if (class_nest ==0 && cur_mid)
- return NEW_CVAR2(id);
- else return NEW_CVAR(id);
+ if (cur_mid) return NEW_CVAR2(id);
+ return NEW_CVAR(id);
}
rb_bug("invalid id for gettable");
return 0;
@@ -4005,11 +4004,7 @@ assignable(id, val)
}
else if (is_class_id(id)) {
if (in_single) return NEW_CVASGN3(id, val);
- if (cur_mid) {
- if (class_nest == 0)
- return NEW_CVASGN2(id, val);
- return NEW_CVASGN(id, val);
- }
+ if (cur_mid) return NEW_CVASGN2(id, val);
return NEW_CVDECL(id, val);
}
else {
@@ -4098,7 +4093,6 @@ node_assign(lhs, rhs)
case NODE_DASGN_CURR:
case NODE_MASGN:
case NODE_CDECL:
- case NODE_CVASGN:
case NODE_CVDECL:
lhs->nd_value = rhs;
break;
View
4 version.h
@@ -1,4 +1,4 @@
#define RUBY_VERSION "1.6.0"
-#define RUBY_RELEASE_DATE "2000-08-28"
+#define RUBY_RELEASE_DATE "2000-08-29"
#define RUBY_VERSION_CODE 160
-#define RUBY_RELEASE_CODE 20000828
+#define RUBY_RELEASE_CODE 20000829

0 comments on commit 5cc08a4

Please sign in to comment.
Something went wrong with that request. Please try again.