diff options
-rw-r--r-- | ChangeLog | 182 | ||||
-rw-r--r-- | Makefile.in | 2 | ||||
-rw-r--r-- | eval.c | 1 | ||||
-rw-r--r-- | lib/cgi.rb | 2 | ||||
-rw-r--r-- | lib/delegate.rb | 3 | ||||
-rw-r--r-- | parse.y | 6 | ||||
-rw-r--r-- | regex.c | 3 | ||||
-rw-r--r-- | win32/Makefile.sub | 5 |
8 files changed, 108 insertions, 96 deletions
@@ -43,6 +43,11 @@ Wed Jan 21 16:01:37 2004 Nobuyoshi Nakada <nobu@ruby-lang.org> * ext/digest/rmd160/extconf.rb: have_library appends found library. +Wed Jan 21 11:36:00 2004 Yukihiro Matsumoto <matz@ruby-lang.org> + + * parse.y (block_append): update nd_end for "real" head node. + [ruby-list:39058] + Tue Jan 20 14:48:13 2004 GOTOU Yuuzou <gotoyuzo@notwork.org> * ext/openssl/extconf.rb: should check <openssl/conf_api.h> instead @@ -94,6 +99,11 @@ Sun Jan 18 02:33:26 2004 WATANABE Hirofumi <eban@ruby-lang.org> * defines.h (_WIN32): undef _WIN32 on Cygwin before defining DOSISH. +Fri Jan 16 09:52:23 2004 Yukihiro Matsumoto <matz@ruby-lang.org> + + * eval.c (proc_eq): Proc with empty body may not be equal. + [ruby-dev:22590] + Thu Jan 15 13:03:10 2004 Nobuyoshi Nakada <nobu@ruby-lang.org> * io.c (argf_read): do not append EOF. (ruby-bugs-ja:PR#585) @@ -3173,6 +3183,92 @@ Thu Oct 9 06:43:33 2003 Nobuyoshi Nakada <nobu@ruby-lang.org> * eval.c (rb_thread_start_0, rb_thread_raise, rb_callcc): save variables across THREAD_SAVE_CONTEXT. +Thu Oct 9 12:05:46 2003 Eric Sunshine <sunshine@sunshineco.com> + + * configure.in: revived NextStep, OpenStep, and Rhapsody ports which + had become unbuildable; enhanced --enable-fat-binary option so that + it accepts a list of desired architectures (rather than assuming a + fixed list), or defaults to a platform-appropriate list if user does + not provide an explicit list; made the default list of architectures + for MAB (fat binary) more comprehensive; now uses -fno-common even + when building the interpreter (in addition to using it for + extensions), thus allowing the interpreter to be embedded into a + plugin module of an external project (in addition to allowing + embedding directly into an application); added checks for + <netinet/in_systm.h> (needed by `socket' extension) and getcwd(); now + ensures that -I/usr/local/include is employed when extensions' + extconf.rb scripts invoke have_header() since extension checks on + NextStep and OpenStep will fail without it if the desired resource + resides in the /usr/local tree; fixed formatting of --help message. + + * Makefile.in: $(LIBRUBY_A) rule now deletes the archive before + invoking $(AR) since `ar' on Apple/NeXT can not "update" MAB archives + (see configure's --enable-fat-binary option); added rule for new + missing/getcwd.c. + + * defines.h: fixed endian handling during MAB build (see configure's + --enable-fat-binary option) to ensure that all portions of the + project see the correct WORDS_BIGENDIAN value (some extension modules + were getting the wrong endian setting); added missing constants + GETPGRP_VOID, WNOHANG, WUNTRACED, X_OK, and type pid_t for NextStep + and OpenStep; removed unnecessary and problematic HAVE_SYS_WAIT_H + define in NeXT section. + + * dir.c: do not allow NAMLEN() macro to trust dirent::d_namlen on + NextStep since, on some installations, this value always resolves + uselessly to zero. + + * dln.c: added error reporting to NextStep extension loader since the + previous behavior of failing silently was not useful; now ensures + that NSLINKMODULE_OPTION_BINDNOW compatibility constant is defined + for OpenStep and Rhapsody; no longer includes <mach-o/dyld.h> twice + on Rhapsody since this header lacks multiple-include protection, + which resulted in "redefinition" compilation errors. + + * main.c: also create hard reference to objc_msgSend() on NeXT + platforms (in addition to Apple platforms). + + * lib/mkmf.rb: now exports XCFLAGS from configure script to extension + makefiles so that extensions can be built MAB (see configure's + --enable-fat-binary option); also utilize XCFLAGS in cc_command() + (but not cpp_command() because MAB flags are incompatible with + direct invocation of `cpp'). + + * ext/curses/extconf.rb: now additionally checks for presence of these + curses functions which are not present on NextStep or Openstep: + bkgd(), bkgdset(), color(), curs(), getbkgd(), init(), scrl(), set(), + setscrreg(), wattroff(), wattron(), wattrset(), wbkgd(), wbkgdset(), + wscrl(), wsetscrreg() + + * ext/curses/curses.c: added appropriate #ifdef's for additional set of + curses functions now checked by extconf.rb; fixed curses_bkgd() and + window_bkgd() to correctly return boolean result rather than numeric + result; fixed window_getbkgd() to correctly signal an error by + returning nil rather than -1. + + * ext/etc/etc.c: setup_passwd() and setup_group() now check for null + pointers before invoking rb_tainted_str_new2() upon fields extracted + from `struct passwd' and `struct group' since null pointers in some + fields are common on NextStep/OpenStep (especially so for the + `pw_comment' field) and rb_tainted_str_new2() throws an exception + when it receives a null pointer. + + * ext/pty/pty.c: include "util.h" for strdup()/ruby_strdup() for + platforms such as NextStep and OpenStep which lack strdup(). + + * ext/socket/getaddrinfo.c: cast first argument of getservbyname(), + gethostbyaddr(), and gethostbyname() from (const char*) to non-const + (char*) for older platforms such as NextStep and OpenStep. + + * ext/socket/socket.c: include "util.h" for strdup()/ruby_strdup() for + platforms such as NextStep and OpenStep which lack strdup(); include + <netinet/in_systm.h> if present for NextStep and OpenStep; cast first + argument of gethostbyaddr() and getservbyname() from (const char*) to + non-const (char*) for older platforms. + + * ext/syslog/syslog.c: include "util.h" for strdup()/ruby_strdup() for + platforms such as NextStep and OpenStep which lack strdup(). + Wed Oct 8 22:19:00 2003 Nathaniel Talbott <ntalbott@ruby-lang.org> * lib/test/unit.rb: removed installation instructions. @@ -4167,92 +4263,6 @@ Wed Sep 10 22:41:54 2003 Tietew <tietew@tietew.net> * eval.c (win32_get_exception_list): avoid VC7 warning. [ruby-win32:577] -Thu Oct 9 12:05:46 2003 Eric Sunshine <sunshine@sunshineco.com> - - * configure.in: revived NextStep, OpenStep, and Rhapsody ports which - had become unbuildable; enhanced --enable-fat-binary option so that - it accepts a list of desired architectures (rather than assuming a - fixed list), or defaults to a platform-appropriate list if user does - not provide an explicit list; made the default list of architectures - for MAB (fat binary) more comprehensive; now uses -fno-common even - when building the interpreter (in addition to using it for - extensions), thus allowing the interpreter to be embedded into a - plugin module of an external project (in addition to allowing - embedding directly into an application); added checks for - <netinet/in_systm.h> (needed by `socket' extension) and getcwd(); now - ensures that -I/usr/local/include is employed when extensions' - extconf.rb scripts invoke have_header() since extension checks on - NextStep and OpenStep will fail without it if the desired resource - resides in the /usr/local tree; fixed formatting of --help message. - - * Makefile.in: $(LIBRUBY_A) rule now deletes the archive before - invoking $(AR) since `ar' on Apple/NeXT can not "update" MAB archives - (see configure's --enable-fat-binary option); added rule for new - missing/getcwd.c. - - * defines.h: fixed endian handling during MAB build (see configure's - --enable-fat-binary option) to ensure that all portions of the - project see the correct WORDS_BIGENDIAN value (some extension modules - were getting the wrong endian setting); added missing constants - GETPGRP_VOID, WNOHANG, WUNTRACED, X_OK, and type pid_t for NextStep - and OpenStep; removed unnecessary and problematic HAVE_SYS_WAIT_H - define in NeXT section. - - * dir.c: do not allow NAMLEN() macro to trust dirent::d_namlen on - NextStep since, on some installations, this value always resolves - uselessly to zero. - - * dln.c: added error reporting to NextStep extension loader since the - previous behavior of failing silently was not useful; now ensures - that NSLINKMODULE_OPTION_BINDNOW compatibility constant is defined - for OpenStep and Rhapsody; no longer includes <mach-o/dyld.h> twice - on Rhapsody since this header lacks multiple-include protection, - which resulted in "redefinition" compilation errors. - - * main.c: also create hard reference to objc_msgSend() on NeXT - platforms (in addition to Apple platforms). - - * lib/mkmf.rb: now exports XCFLAGS from configure script to extension - makefiles so that extensions can be built MAB (see configure's - --enable-fat-binary option); also utilize XCFLAGS in cc_command() - (but not cpp_command() because MAB flags are incompatible with - direct invocation of `cpp'). - - * ext/curses/extconf.rb: now additionally checks for presence of these - curses functions which are not present on NextStep or Openstep: - bkgd(), bkgdset(), color(), curs(), getbkgd(), init(), scrl(), set(), - setscrreg(), wattroff(), wattron(), wattrset(), wbkgd(), wbkgdset(), - wscrl(), wsetscrreg() - - * ext/curses/curses.c: added appropriate #ifdef's for additional set of - curses functions now checked by extconf.rb; fixed curses_bkgd() and - window_bkgd() to correctly return boolean result rather than numeric - result; fixed window_getbkgd() to correctly signal an error by - returning nil rather than -1. - - * ext/etc/etc.c: setup_passwd() and setup_group() now check for null - pointers before invoking rb_tainted_str_new2() upon fields extracted - from `struct passwd' and `struct group' since null pointers in some - fields are common on NextStep/OpenStep (especially so for the - `pw_comment' field) and rb_tainted_str_new2() throws an exception - when it receives a null pointer. - - * ext/pty/pty.c: include "util.h" for strdup()/ruby_strdup() for - platforms such as NextStep and OpenStep which lack strdup(). - - * ext/socket/getaddrinfo.c: cast first argument of getservbyname(), - gethostbyaddr(), and gethostbyname() from (const char*) to non-const - (char*) for older platforms such as NextStep and OpenStep. - - * ext/socket/socket.c: include "util.h" for strdup()/ruby_strdup() for - platforms such as NextStep and OpenStep which lack strdup(); include - <netinet/in_systm.h> if present for NextStep and OpenStep; cast first - argument of gethostbyaddr() and getservbyname() from (const char*) to - non-const (char*) for older platforms. - - * ext/syslog/syslog.c: include "util.h" for strdup()/ruby_strdup() for - platforms such as NextStep and OpenStep which lack strdup(). - Tue Sep 9 10:39:51 2003 Nobuyoshi Nakada <nobu@ruby-lang.org> * eval.c (struct tag): dst should be VALUE. diff --git a/Makefile.in b/Makefile.in index bbfe6f8186..e3257c06d9 100644 --- a/Makefile.in +++ b/Makefile.in @@ -229,7 +229,7 @@ $(srcdir)/configure: $(srcdir)/configure.in lex.c: keywords @-rm -f $@ - gperf -p -j1 -i 1 -g -o -t -N rb_reserved_word -k1,3,$$ $> > $@ || \ + gperf -p -j1 -i 1 -g -o -t -N rb_reserved_word -k1,3,$$ $< > $@ || \ cp "$(srcdir)/$@" . .y.c: @@ -6106,6 +6106,7 @@ eval(self, src, scope, file, line) errat = get_backtrace(ruby_errinfo); mesg = rb_attr_get(ruby_errinfo, rb_intern("mesg")); if (!NIL_P(mesg) && TYPE(mesg) == T_STRING) { + rb_str_update(mesg, 0, 0, rb_str_new2(": ")); rb_str_update(mesg, 0, 0, RARRAY(errat)->ptr[0]); } RARRAY(errat)->ptr[0] = RARRAY(backtrace(-2))->ptr[0]; diff --git a/lib/cgi.rb b/lib/cgi.rb index 7f1f42260e..f8158858f3 100644 --- a/lib/cgi.rb +++ b/lib/cgi.rb @@ -923,7 +923,7 @@ class CGI %w[ CONTENT_LENGTH SERVER_PORT ].each do |env| define_method(env.sub(/^HTTP_/n, '').downcase) do - val = env_table[env] && Integer(val) + (val = env_table[env]) && Integer(val) end end diff --git a/lib/delegate.rb b/lib/delegate.rb index 1ba4cf1e1b..0069109624 100644 --- a/lib/delegate.rb +++ b/lib/delegate.rb @@ -27,6 +27,7 @@ class Delegator preserved |= t.protected_instance_methods(false) break if t == Delegator end + preserved << "singleton_method_added" for method in obj.methods next if preserved.include? method begin @@ -37,7 +38,7 @@ class Delegator rescue Exception $@.delete_if{|s| /:in `__getobj__'$/ =~ s} #` $@.delete_if{|s| /^\\(eval\\):/ =~ s} - raise + Kernel::raise end end EOS @@ -384,7 +384,7 @@ stmts : none } | stmts terms stmt { - $$ = block_append($1, newline_node($3)); + $$ = block_append($1, $3); } | error stmt { @@ -4518,7 +4518,7 @@ block_append(head, tail) parser_warning(h, "unused literal ignored"); return tail; default: - end = NEW_BLOCK(head); + h = end = NEW_BLOCK(head); end->nd_end = end; fixpos(end, head); head = end; @@ -4554,7 +4554,7 @@ block_append(head, tail) tail->nd_end = tail; } end->nd_next = tail; - head->nd_end = tail->nd_end; + h->nd_end = tail->nd_end; return head; } @@ -2181,6 +2181,7 @@ re_compile_pattern(pattern, size, bufp) unfetch_interval: /* If an invalid interval, match the characters as literals. */ + re_warning("regexp has invalid interval"); p = beg_interval; beg_interval = 0; @@ -2363,6 +2364,8 @@ re_compile_pattern(pattern, size, bufp) default: if (c == ']') re_warning("regexp has `]' without escape"); + else if (c == '}') + re_warning("regexp has `}' without escape"); normal_char: /* Expects the character in `c'. */ had_mbchar = 0; if (ismbchar(c)) { diff --git a/win32/Makefile.sub b/win32/Makefile.sub index ab7b465e68..0315b9777d 100644 --- a/win32/Makefile.sub +++ b/win32/Makefile.sub @@ -84,9 +84,6 @@ exec_prefix = $(prefix) !if !defined(libdir) libdir = $(exec_prefix)/lib !endif -!if !defined(DESTDIR) -DESTDIR = $(prefix) -!endif !if !defined(CFLAGS) CFLAGS = -MD $(DEBUGFLAGS) $(OPTFLAGS) $(PROCESSOR_FLAG) !endif @@ -305,7 +302,7 @@ s,@FFLAGS@,$(FFLAGS),;t t s,@LDFLAGS@,,;t t s,@LIBS@,$(LIBS),;t t s,@exec_prefix@,$${prefix},;t t -s,@prefix@,,;t t +s,@prefix@,$(prefix),;t t s,@program_transform_name@,s,,,,;t t s,@bindir@,$${exec_prefix}/bin,;t t s,@sbindir@,$${exec_prefix}/sbin,;t t |