1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@908 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
matz 2000-08-29 02:52:41 +00:00
parent bba6ae3137
commit 4e560cffd6
9 changed files with 31 additions and 40 deletions

View file

@ -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>

7
ToDo
View file

@ -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")

15
eval.c
View file

@ -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 file

@ -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

1
gc.c
View file

@ -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 file

@ -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 @@ RUBY_SO_NAME = #{CONFIG["RUBY_SO_NAME"]}
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. ####

2
node.h
View file

@ -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)

12
parse.y
View file

@ -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 file

@ -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