From: matz@... (Yukihiro Matsumoto) Date: 1997-08-29T12:43:29+09:00 Subject: [ruby-dev:321] Re: << まつもと ゆきひろです In message "[ruby-dev:317] <<" on 97/08/29, 前田 修吾 / maeda shugo writes: | |前田です。 | |In message "[ruby-dev:313] ruby 1.1a4 released" |Yukihiro Matsumoto wrote: | ||a4をリリースしました.気持ちとしてはここらで安定してドキュメ ||ントの変更にかかりたいんですけど,甘いですか.^^;;; | |まだおかしいみたいです(^^; パッチを出します.他の件も解消できているはずです. --- inits.c~ Wed Jan 29 12:58:20 1997 +++ inits.c Fri Aug 29 10:59:16 1997 @@ -23,3 +23,2 @@ #endif - Init_GC(); Init_eval(); @@ -46,2 +45,3 @@ Init_Math(); + Init_GC(); Init_ext(); --- variable.c~ Fri Aug 29 10:22:33 1997 +++ variable.c Fri Aug 29 11:09:14 1997 @@ -114,3 +114,8 @@ arg.prev = 0; - st_foreach(RCLASS(cObject)->iv_tbl, fc_i, &arg); + if (RCLASS(cObject)->iv_tbl) { + st_foreach(RCLASS(cObject)->iv_tbl, fc_i, &arg); + } + if (arg.name == 0) { + st_foreach(class_tbl, fc_i, &arg); + } if (arg.name) { @@ -182,3 +187,7 @@ { - rb_iv_set(class, "__classpath__", str_new2(rb_id2name(id))); + extern VALUE cString; + + if (cString) { + rb_iv_set(class, "__classpath__", str_new2(rb_id2name(id))); + } } --- parse.y~ Fri Aug 29 11:43:57 1997 +++ parse.y Fri Aug 29 11:53:07 1997 @@ -2167,4 +2167,4 @@ /* skip embedded rd document */ - if (strncmp(lex_p, "begin", 5) == 0 && - (lex_p[5] == '\n' || lex_p[5] == '\r')) { + if (strncmp(lex_p, "begin", 5) == 0 && isspace(lex_p[5])) { + lex_p = lex_pend; for (;;) { @@ -2175,5 +2175,4 @@ if (c != '=') continue; - if (strncmp(lex_p, "end", 3) == 0 && - (lex_p[3] == '\n' || lex_p[3] == '\r')) { - lex_p += 3; /* sizeof "end" */ + if (strncmp(lex_p, "end", 3) == 0 && isspace(lex_p[3])) { + lex_p = lex_pend; break; @@ -2205,4 +2204,4 @@ if (lex_state != EXPR_END && c == '<') { - c = nextc(); - if (!isspace(c) && (strchr("\"'`", c) || isalpha(c))) { + int c2 = nextc(); + if (!isspace(c2) && (strchr("\"'`", c2) || isalpha(c2))) { if (!lex_input) { @@ -2210,4 +2209,5 @@ } - return here_document(c); + return here_document(c2); } + pushback(c2); }