Граф коммитов

43043 Коммитов

Автор SHA1 Сообщение Дата
naruse feaa82a42b * gc.c (rb_alloc_tmp_buffer_with_count): added like xmalloc2 to
avoid duplicated check of size.

* gc.c (ruby_xmalloc2): added to keep separate layers.

* include/ruby/ruby.h (rb_alloc_tmp_buffer2): added to check
  the size more statically.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54664 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-04-21 20:59:40 +00:00
svn f056071cdc * 2016-04-22
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54663 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-04-21 20:59:40 +00:00
naruse 54c1f47930 * include/ruby/ruby.h (LIKELY): moved from internal.h.
* include/ruby/ruby.h (UNLIKELY): ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54662 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-04-21 20:59:39 +00:00
naruse fe120ac1f1 * gc.c (objspace_malloc_prepare): remove size check because it is
used by objspace_xmalloc and objspace_xcalloc.
  objspace_xmalloc introduces its own check in this commit.
  objspace_xcalloc checks with xmalloc2_size (ruby_xmalloc2_size).

* gc.c (objspace_xmalloc0): common xmalloc function.

* gc.c (objspace_xmalloc): introduce its own size check.

* gc.c (objspace_xmalloc2): separated from ruby_xmalloc2 to clarify
  the layer who has the responsibility to check the size.

* gc.c (objspace_xrealloc): remove duplicated size check.

* gc.c (ruby_xmalloc2): use objspace_xmalloc2.

* include/ruby/ruby.h (ruby_xmalloc2_size): follow the size limit
  as SSIZE_MAX. Note that ISO C says size_t is unsigned integer.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54661 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-04-21 20:59:39 +00:00
kazu f6e3f3613a fix typos
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54660 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-04-21 12:16:14 +00:00
kazu 616c41592b fix typos [ci skip]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54659 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-04-21 12:16:13 +00:00
svn 0386e09a8f * 2016-04-21
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54658 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-04-21 03:14:06 +00:00
nobu 6e8a14dce1 ifchange: ignore unmatch TEST_COLORS
* configure.in: check if succeeded in creating config.h.
* tool/ifchange: ignore failures when TEST_COLORS unmatched. just
  use the default value if expected name is not contained in it.
  [ruby-core:75046] [Bug #12303]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54657 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-04-21 03:14:05 +00:00
nobu 20cd25c86f cgi/util.rb: remove CGI::Util#_unescape
* ext/cgi/escape/escape.c (cgiesc_unescape): define unescape
  method instead of _unescape, and should pass the optional
  argument to the super method.
* lib/cgi/util.rb (CGI::Util#_unescape): remove intermediate
  method.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54655 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-04-20 08:33:33 +00:00
nobu 86b1179a03 error.c: SyntaxError#initialize
* error.c (syntax_error_initialize): move the default message,
  "compile error", from parse.y.  the default parameter should
  belong to the class definition.
* parse.y (yycompile0): use the default parameter.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54654 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-04-20 06:52:30 +00:00
nobu e06aaf699d assertions.rb: return the exception
* test/lib/test/unit/assertions.rb (assert_syntax_error): return
  the rescued exception object as well as assert_raise.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54653 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-04-20 04:37:26 +00:00
nobu 9e8dfaa8b0 compile.c: make SyntaxError after formatting
* compile.c (append_compile_error): make SyntaxError instance by
  rb_syntax_error_append on demand after formatting the message.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54652 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-04-20 02:52:07 +00:00
svn 7f5f5e80d5 * 2016-04-20
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54651 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-04-20 01:25:56 +00:00
nobu 97177a2d99 refactor syntax error
* compile.c (append_compile_error): use rb_syntax_error_append.
* error.c (rb_syntax_error_append): append messages into a
  SyntaxError exception instance.
* parse.y (yycompile0): make new SyntaxError instance in main
  mode, otherwize error_buffer should be a SyntaxError if error
  has occurred.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54650 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-04-20 01:25:55 +00:00
nobu 51c195948f refactor parser error
* error.c (err_vcatf): rename, and separate appending message from
  creating a string buffer.
* error.c (rb_syntax_error_append): merge rb_error_vsprintf and
  rb_compile_err_append.
* parse.y (parser_compile_error): use rb_syntax_error_append.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54649 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-04-19 08:42:50 +00:00
nobu 51612505f7 appending compile error without rb_errinfo
* compile.c (append_compile_error, compile_bug): pass iseq and get
  error info and file from it, not by the thread error info.
* error.c (rb_report_bug_valist): take va_list instead of variadic
  arguments, and just report the bug but not abort.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54648 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-04-19 04:46:20 +00:00
sonots 64231b49ca * lib/time.rb: revert r54167 because it would break
backward compatibilities, and it is documented that
  Time.parse does not take into account time zone
  abbreations other than ones described in RFC 822

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54647 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-04-19 04:20:48 +00:00
nobu b48c212ec9 use more descriptive assertions
* test/logger/test_logdevice.rb: use assert_predicate,
  assert_not_predicate, and assert_file instead of bare assert.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54646 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-04-19 04:14:38 +00:00
sonots eb20a74399 * ChangeLog: Fix dates of previous commits
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54645 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-04-19 04:13:19 +00:00
sonots 7bb039973c * ChangeLog: Add descriptions for logger updates
* NEWS: Add descriptions for logger updates

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54644 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-04-19 03:55:13 +00:00
sonots dd4f590196 * test/logger/test_logdevice.rb: fix tests to pass on windows
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54641 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-04-18 15:54:45 +00:00
svn 7b2d47132f * 2016-04-19
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54640 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-04-18 15:07:32 +00:00
sonots 2c6f15b1ad * lib/logger.rb: Add shift_period_suffix option [Fix GH-10772]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54639 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-04-18 15:07:31 +00:00
sonots a040953386 Allow specifying logger parameters in constructor
* lib/logger.rb: Allow specifying logger prameters such as level,
  progname, datetime_format, formatter in constructor [Bug #12224]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54638 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-04-18 10:45:40 +00:00
nobu ec2f63167e error.c: warn_vsprintf
* error.c (warn_vsprintf, warning_string): share common code.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54630 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-04-18 07:08:35 +00:00
nobu 5a0543e87a error.c: compile_vsprintf
* error.c (compile_vsprintf): rename compile_snprintf, following
  the argument changes.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54629 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-04-18 07:08:34 +00:00
nobu 6ee3a2cd15 compile.c: fix dangling link
* compile.c (iseq_peephole_optimize): should not replace the
  current target INSN, not to follow the replaced dangling link in
  the caller.  [ruby-core:74993] [Bug #11816]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54628 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-04-18 07:07:03 +00:00
nobu 0a38e38aea numeric.c: numeric ndigits
* numeric.c (num_floor, num_ceil, num_truncate): add an optional
  parameter, digits, as well as Numeric#round.  [Feature #12245]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54626 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-04-18 03:57:34 +00:00
nobu fe96a2495c numeric.c: flo_truncate
* numeric.c (flo_truncate): add an optional parameter, digits, as
  well as Float#round.  [Feature #12245]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54625 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-04-18 03:56:33 +00:00
nobu 39f31b8c87 numeric.c: int_truncate
* numeric.c (int_truncate): add an optional parameter, digits, as
  well as Integer#round.  [Feature #12245]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54624 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-04-18 03:55:33 +00:00
nobu adc7cb240a test_float.rb: assertions for negative floats
* test/ruby/test_float.rb: add assertions for round,floor,ceil on
  negative floats.  [Feature #12245]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54623 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-04-18 03:40:03 +00:00
svn b25f06d314 * 2016-04-18
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54622 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-04-18 02:38:38 +00:00
nobu ae4eb682db numeric.c: update doc [ci skip]
* numeric.c (int_to_i): [DOC] floor and ceil are no longer
  synonyms.  [Feature #12245]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54621 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-04-18 02:38:37 +00:00
nobu 912948c7f5 error.c: remove unused function
* error.c (rb_compile_bug): remove unused function, which has
  never been exposed.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54620 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-04-17 12:37:15 +00:00
ktsj 5e08452993 * array.c (rb_ary_sum): [DOC] fix typos.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54619 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-04-17 11:34:52 +00:00
svn f2ee4c7eb0 * 2016-04-17
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54616 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-04-16 19:20:12 +00:00
nagachika 531514bac2 * tool/redmine-backporter.rb: revisions are strings.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54615 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-04-16 19:20:11 +00:00
yui-knk a17dfde333 * ext/date/date_core.c : remove not used f_getlocal macro.
After r54553 f_getlocal macro is not used.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54614 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-04-16 05:25:59 +00:00
yui-knk 3fa0fc6931 * ext/date/date_core.c : remove not used f_utc6 macro.
After r54169 f_utc6 macro is not used.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54613 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-04-16 05:14:13 +00:00
nobu da2e0721b1 struct.c: unique members
* struct.c (struct_make_members_list, rb_struct_s_def): member
  names should be unique. [ruby-core:74971] [Bug #12291]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54612 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-04-16 01:00:13 +00:00
nobu c746d5027d struct.c: struct_make_members_list
* struct.c (struct_make_members_list): extract making member name
  list from char* va_list, with creating symbols without
  intermediate IDs.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54611 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-04-16 00:59:42 +00:00
nagachika 25c0a2d3ad * tool/redmine-backporter.rb: sort revisions.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54610 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-04-15 16:34:22 +00:00
akr b59a158a18 * array.c (rb_ary_sum): Don't yield same element twice.
Found by nagachika.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54609 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-04-15 16:26:38 +00:00
akr 72305d2531 * array.c (rb_ary_sum): Fix SEGV by [1/2r, 1].sum.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54606 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-04-15 16:04:18 +00:00
svn 7111e7c6f8 * 2016-04-16
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54605 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-04-15 15:26:49 +00:00
akr 4873e62103 mention Array#sum with third-party gems.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54604 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-04-15 15:26:48 +00:00
mrkn d1d95056a3 rename rb_rational_add -> rb_rational_plus
* rational.c (rb_rational_plus): rename from rb_rational_add
  to be aligned with rb_fix_plus.

* array.c (rb_ary_sum): ditto.

* internal.h: ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54603 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-04-15 14:54:39 +00:00
mrkn 0a267b79f6 array.c (rb_ary_sum): use rb_rational_add directly
* rational.c (rb_rational_add): rename from nurat_add.

* array.c (rb_ary_sum): use rb_rational_add directly.

* test/ruby/test_array.rb (test_sum): add assertions for an array of
  Rational values.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54602 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-04-15 14:46:35 +00:00
mrkn a945eb9dda array.c: sum for Rational and Float mixed arrays
* array.c (rb_ary_sum): apply the precision compensated algorithm
  for an array in which Rational and Float values are mixed.

* test/ruby/test_array.rb (test_sum): add assertions for the above
  change.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54601 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-04-15 13:33:05 +00:00
nobu 4bf8fa83b7 thread.c: defer setting name in initialize
* thread.c (rb_thread_setname): defer setting native thread name
  set in initialize until the native thread is created.
  [ruby-core:74963] [Bug #12290]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54600 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2016-04-15 13:30:03 +00:00