akr
0c3d124571
* bignum.c (bytes_2comp): Define it only for little endian
...
environment.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42787 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-02 22:41:07 +00:00
knu
7cc26c722c
Fix and add tests for Numeric#step.
...
* test/ruby/test_float.rb (TestFloat#test_num2dbl): Allow nil as
step, as with the keyword argument.
* test/ruby/test_numeric.rb (TestNumeric#test_step): Add tests for
nil as step or limit.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42786 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-02 22:39:24 +00:00
knu
4993cf9e24
Numeral#step should raise TypeError if a non-numeric parameter is given.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42785 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-02 22:39:22 +00:00
akr
3065dd71e8
* internal.h (bit_length): Add casts to fix complation error with
...
clang 3.0 -Werror,-Wshorten-64-to-32.
[ruby-dev:47687] reported by SASADA Koichi.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42784 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-02 22:29:48 +00:00
svn
69d0f84bfa
* 2013-09-03
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42783 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-02 18:21:21 +00:00
ko1
41234c5ca3
* vm_insnhelper.c (vm_search_super_method): use ci->argc instead of
...
ci->orig_argc. ci->argc can be changed by splat arguments.
[ruby-list:49575]
This fix should be applied to Ruby 2.0.0 seriese.
* test/ruby/test_super.rb: add a test for above.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42782 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-02 18:21:13 +00:00
knu
fd4b5b8dc8
Enhance Numeric#step.
...
* numeric.c (num_step): Default the limit argument to infinity and
allow it to be omitted. Keyword arguments (by: and to:) are
introduced for ease of use. [Feature #8838 ] [ruby-dev:47662]
[ruby-dev:42194]
* numeric.c (num_step): Optimize for infinite loop.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42781 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-02 14:56:06 +00:00
nobu
a94833eb50
test_string.rb: yet another test
...
* test/ruby/test_string.rb (TestString#test_frozen_string_adjacent):
option is allowed after the last string.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42780 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-02 14:56:03 +00:00
nobu
306cf3ac03
parse.y: valid suffix word only
...
* parse.y (parser_str_options): use valid suffix word only, as well as
numeric literal, for the backward comatibility.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42779 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-02 14:46:25 +00:00
nobu
57d06d7b3f
test_string.rb: remove duplicated code
...
* test/ruby/test_string.rb (TestString#test_frozen_dstring): remove
duplicated assertion.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42778 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-02 14:33:56 +00:00
akr
1d7611ff48
* bignum.c (ISDIGIT): Unused macro removed.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42777 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-02 13:56:23 +00:00
akr
5f61a592e9
* bignum.c (str2big_poweroftwo): Extracted from rb_cstr_to_inum.
...
(str2big_normal): Ditto.
(str2big_karatsuba): Ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42776 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-02 13:52:05 +00:00
nobu
93ea04ecec
parse.y: force_encoding
...
* parse.y (str_suffix_gen): String#b creates new string object, use
force_encoding instead.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42775 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-02 08:53:40 +00:00
charliesome
a056098cb7
* NEWS: Add note about frozen string literals
...
* compile.c (case_when_optimizable_literal): optimize NODE_LIT strings
in when clauses of case statements
* ext/ripper/eventids2.c: add tSTRING_SUFFIX
* parse.y: add 'f' suffix on string literals for frozen strings
* test/ripper/test_scanner_events.rb: add scanner tests
* test/ruby/test_string.rb: add frozen string tests
[Feature #8579 ] [ruby-core:55699]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42773 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-02 07:11:41 +00:00
knu
78c75d91ae
Add forgotton [DOC].
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42772 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-02 05:48:36 +00:00
knu
1b4addb445
Process#setproctitle,argv0: Fix and improve rdoc.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42771 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-02 05:42:02 +00:00
mrkn
01983c97a9
* NEWS: fix description of number literal suffixes.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42770 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-02 05:16:39 +00:00
charliesome
0732ed367c
* test/rake/test_rake_rules.rb: add space after string literal to
...
prevent conflict with string options syntax "foo"opts
* test/rss/rss-assertions.rb: ditto
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42769 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-02 05:08:20 +00:00
akr
dd9c8b88af
* test/ruby/test_bignum.rb (test_interrupt_during_to_s): Disable it
...
when GMP is used.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42768 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-02 03:29:16 +00:00
akr
0effd06122
* bignum.c (Init_Bignum): Define Bignum::GMP_VERSION when GMP is used.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42767 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-01 22:04:35 +00:00
akr
c48e169fb9
* bignum.c (big2str_generic): Reduce arguments.
...
(big2str_gmp): Ditto.
(rb_big2str1): Follow the above change.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42766 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-01 16:47:20 +00:00
akr
a3e3cce183
Fix funciton name.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42765 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-01 16:06:20 +00:00
svn
0b8c55f7f3
* 2013-09-02
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42764 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-01 15:09:12 +00:00
akr
8a108ffc21
* process.c (get_mach_timebase_info): Extracted from rb_clock_gettime.
...
(rb_clock_gettime): Use get_mach_timebase_info.
(rb_clock_getres): Support MACH_ABSOLUTE_TIME_BASED_CLOCK_MONOTONIC.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42763 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-01 15:09:06 +00:00
akr
b64c2c348f
* bignum.c (GMP_BIG2STR_DIGITS): New constant.
...
(big2str_gmp): New function.
(rb_big2str1): Use big2str_gmp for big bignums.
* internal.h (rb_big2str_gmp): Declared.
* ext/-test-/bignum/big2str.c (big2str_gmp): New method.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42762 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-01 14:34:53 +00:00
akr
4dd7a13a0a
* bignum.c (bary_mul_gmp): Use mpz_init and mpz_clear instead of
...
mpz_inits and mpz_clears.
Older GMP don't have them.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42761 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-01 13:38:49 +00:00
akr
28130c1c63
* test/net/http/test_http.rb (test_bind_to_local_port): Choose an open
...
port more reliably.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42760 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-01 12:19:15 +00:00
nobu
ed5de3814a
* properties.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42759 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-01 11:38:40 +00:00
akr
7dd1604603
* bignum.c (big2str_base_poweroftwo): Renamed from
...
big2str_base_powerof2.
(rb_big2str_poweroftwo): New function for test.
(big2str_generic): Extracted from rb_big2str1.
(rb_big2str_generic): New function for test.
* internal.h (rb_big2str_poweroftwo): Declared.
(rb_big2str_generic): Ditto.
* ext/-test-/bignum/big2str.c: New file.
* test/-ext-/bignum/test_big2str.rb: New file.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42758 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-01 11:35:57 +00:00
nobu
cec97f40f6
process.c: suppress warning
...
* process.c (rb_clock_getres): move conditionally used variable to the
proper block.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42757 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-01 09:04:10 +00:00
akr
34004844cd
* bignum.c (big2str_2bdigits): Renamed from big2str_orig.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42756 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-01 06:21:52 +00:00
akr
6fe40011a8
* bignum.c: Remove BITSPERDIG >= INT_MAX test. The static assertion,
...
SIZEOF_BDIGITS <= sizeof(BDIGIT) is enough.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42755 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-01 04:03:32 +00:00
akr
c9b3571ceb
* bignum.c (maxpow_in_bdigit): Removed.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42754 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-01 02:39:05 +00:00
akr
e8d8e0696f
Add assertions.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42753 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-01 01:57:45 +00:00
akr
77f245e62e
* numeric.c (rb_fix_bit_length): Moved from bignum.c.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42752 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-01 01:31:16 +00:00
akr
a0a0b61b68
[DOC]
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42751 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-01 01:00:15 +00:00
akr
7bb549d6b5
* internal.h (bit_length): Moved from bignum.c.
...
(nlz_int): Ditto.
(nlz_long): Ditto.
(nlz_long_long): Ditto.
(nlz_int128): Ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42750 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-01 00:57:00 +00:00
akr
8bd7af6794
* bignum.c (bit_length): Renamed from bitsize.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42749 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-08-31 18:34:42 +00:00
akr
4ac5f5710e
updated.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42748 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-08-31 15:12:39 +00:00
svn
feb9806237
* 2013-09-01
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42747 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-08-31 15:09:25 +00:00
akr
89744e75bd
* bignum.c (rb_big_bit_length): New method.
...
(rb_fix_bit_length): Ditto.
[ruby-core:56247] [Feature #8700 ]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42746 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-08-31 15:09:20 +00:00
akr
a926a1f41c
mention that Process.clock_getres is a CRuby feature.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42745 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-08-31 13:25:05 +00:00
akr
23da5a785e
* process.c (rb_clock_getres): New method.
...
(timetick2dblnum_reciprocal): New function.
* configure.in: Check clock_getres.
[ruby-core:56780] [Feature #8809 ] accepted at
DevelopersMeeting20130831Japan
https://bugs.ruby-lang.org/projects/ruby/wiki/DevelopersMeeting20130831Japan
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42744 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-08-31 13:21:48 +00:00
akr
83a0709174
* bignum.c: Use GMP to accelerate big Bignum multiplication.
...
(bary_mul_gmp): New function.
(bary_mul): Use bary_mul_gmp.
(bigsq): Use different threshold with GMP.
* configure.in: Detect GMP.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42743 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-08-31 12:17:18 +00:00
charliesome
d0d63cff8a
* compile.c (NODE_MATCH3): pass CALL_INFO to opt_regexpmatch2
...
* insns.def (opt_regexpmatch2): use CALL_SIMPLE_METHOD to call =~ if
the receiver is not a T_STRING [Bug #8847 ] [ruby-core:56916]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42742 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-08-31 06:07:21 +00:00
charliesome
e1fd7fa03e
* vm_insnhelper.h (CALL_SIMPLE_METHOD): change name of 'recv' argument
...
so that other variable names may be used when calling this macro
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42741 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-08-31 05:45:10 +00:00
akr
7a4feec795
* lib/securerandom.rb (random_bytes): Use Process.clock_gettime.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42740 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-08-31 05:07:56 +00:00
nobu
9eb141196b
proc.c: preserve encodings
...
* proc.c (mnew_from_me, rb_mod_define_method, umethod_bind),
(method_inspect): preserve class name encodings.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42739 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-08-31 04:30:30 +00:00
nobu
bdbda951d1
proc.c: local variable
...
* proc.c (umethod_bind): extract a local variable.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42738 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-08-31 04:30:28 +00:00
nobu
378161fe68
dir.c: reduce string object
...
* dir.c (dir_each): get rid of allocate new string from UTF-8 string.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42737 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-08-31 04:30:25 +00:00