* lib/tempfile.rb: Do not pick a name which was once used and is
still scheduled for removal.
* lib/tempfile.rb: A lock file need not and must not be scheduled
for removal.
* lib/tempfile.rb: Compare Max_try with the number of mkdir
failures instead of the suffix counter.
* lib/tempfile.rb: Overall cleanup and add some important notices.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3051 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* ostruct.rb: ditto. fix a bug in inspect which called String#+ with
Symbol. [ruby-dev:18788]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3044 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* configure.in (LIBRUBYARG_STATIC, LIBRUBYARG_SHARED): linker
argument to link static/shared library respectively.
* Makefile.in (LIBRUBYARG_STATIC, LIBRUBYARG_SHARED): added.
* bcc32/Makefile.sub, win32/Makefile.sub: ditto.
* instruby.rb (LIBRUBY_A): install to libdir.
* lib/mkmf.rb (link_command): link static library of ruby, or
try_run fails unless LIBRUBY_SO is installed. [ruby-dev:18646]
* eval.c (call_trace_func): toplevel caller was missing.
[ruby-dev:18754]
* eval.c (proc_to_s): adjust created line number.
* parse.y (primary, do_block, brace_block): adjust line number of
block to beginning line, instead of the first statement inside
the block.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3042 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
asin, acosh, atanh, log, log10 and sqrt.
* eval.c (rb_add_method): initialize should always be private.
* parse.y (expr): add rescue modifier rule.
* parse.y (command_call): return, break and next with argument is
now part of this rule.
* parse.y (yylex): "a" in "a /5" should be considered as a local
variable. [experimental]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3041 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
proper_superset?() subset?(), and proper_subset?().
[obtained from: Jason Voegele's set.rb]
* lib/set.rb: define several aliases: union() for |(),
difference() for -(), ande intersection() for &().
[obtained from: Jason Voegele's set.rb]
* lib/set.rb: deal with a s/id/object_id/ leftover.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3038 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
really a module, whose methods must be safe for reciever's type.
* eval.c (rb_eval): nosuper should not be inherited unless the
overwritten method is an undef placeholder.
* parse.y (primary): allow 'when'-less case statement; persuaded
by Sean Chittenden.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3032 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
in a variable name. Replace them with `_'. Define a hash named
$OPT for convenience.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3021 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
lib/mkmf.rb(773) : Also in the case of bccwin32, the path was added.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3008 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
[ruby-dev:18577]
* ext/extmk.rb (extmake): expand $srcdir.
* ext/win32ole/extconf.rb: should not override $CFLAGS, but
append.
* lib/mkmf.rb (config_string): use given config hash.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2991 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* ext/extmk.rb (extmake): avoid Borland make's quirk behavior.
* lib/mkmf.rb (link_command): opt is not a makefile macro.
* bcc32/Makefile.sub ($(LIBRUBY_SO) $(LIBRUBY)): EXTOBJS were not
linked.
* bcc32/Makefile.sub (ext/extinit.obj): missing.
* bcc32/Makefile.sub (TRY_LINK): options have to place before any
non-option arguments.
* win32/Makefile.sub (TRY_LINK): need -link and -libpath options.
* bcc32/Makefile.sub, win32/Makefile.sub (RANLIB): logical
operator never work with command.com.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2979 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* lib/mkmf.rb (link_command): put 'opt' after conftest.c for
static linking.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2978 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* configure.in (LIBEXT): suffix for static libraries.
* configure.in (LIBPATHFLAG): switch template to specify library
path.
* configure.in (LINK_SO): command to link shared objects.
* configure.in (DEFFILE, ARCHFILE): miscellaneous system dependent
files.
* configure.in (EXPORT_PREFIX): prefix to exported symbols on
Windows.
* configure.in (COMMON_LIBS, COMMON_MACROS, COMMON_HEADERS):
libraries, macros and headers used in common.
* configure.in (RUBYW_INSTALL_NAME, rubyw_install_name): GUI mode
excutable name.
* Makefile.in (CFLAGS): append XCFLAGS.
* Makefile.in (PREP): miscellaneous system dependent files.
* Makefile.in (ruby.imp, ext/extinit.o): moved from ext/extmk.rb.
* Makefile.in (fake.rb): CROSS_COMPILING keeps building platform.
* Makefile.in (MAKEFILES): depend on *.in and config.status.
* Makefile.in (parse.c): replace "y.tab.c" with actual name for
byacc.
* ext/extmk.rb, lib/mkmf.rb: integrated.
* ext/extmk.rb: propagate MFLAGS.
* ext/extmk.rb (extmake): make dummy Makefile to clean even if no
Makefile is made.
* lib/mkmf.rb (older): accept multiple file names and Time
objects.
* lib/mkmf.rb (xsystem): split and qoute.
* lib/mkmf.rb (cpp_include): make include directives.
* lib/mkmf.rb (try_func): try wheather specified function is
available.
* lib/mkmf.rb (install_files): default to site-install.
* lib/mkmf.rb (checking_for): added.
* lib/mkmf.rb (find_executable0): just find executable file with
no message.
* lib/mkmf.rb (create_header): output header file is variable.
* lib/mkmf.rb (create_makefile): separate sections.
* lib/mkmf.rb (init_mkmf): initialize global variables.
* win32/Makefile.sub, bcc32/Makefile.sub (CPP, AR): added.
* bcc32/Makefile.sub (ARCH): fixed to i386.
* win32/Makefile.sub, bcc32/Makefile.sub (miniruby): should not
link EXTOBJS.
* ext/dl/extconf.rb: use try_cpp to cross compile.
* ext/dl/extconf.rb: not modify files in source directory.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2974 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* lib/weakref.rb (WeakRef::__getobj__): examin if alive or not by
ID_REV_MAP to deal with recycled object. [ruby-dev:18472]
* lib/weakref.rb (WeakRef::weakref_alive?): ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2948 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* eval.c (ruby_run): should set toplevel visibility again here.
* eval.c (rb_eval): should not rely on ruby_class == rb_cObject
check. Besides allow implicit publicity for attribute set
methods.
* parse.y (primary): need not to check class_nest, just set
whether method is an attrset or not.
* string.c (rb_str_each_line): p might be at the top of the
string.
* class.c (rb_make_metaclass): class of metaclass should be
metaclass of superclass, unless class itself is a metaclass;
class of metaclass of metaclass should point back to self.
eh, confusing, isn't it.
* class.c (rb_singleton_class): check if its class is singleton
AND attached to self.
* eval.c (rb_eval): should define class/module under ruby_cbase.
* eval.c (rb_eval): should set class/module path based on
ruby_cbase, not ruby_class.
* eval.c (module_setup): use ruby_cbase instead of ruby_class.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2887 b2dd03c8-39d4-4d8f-98ff-823fe69b080e