aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* ext/openssl: refactor OpenSSL::PKey::EC::Point#multopic/openssl-ecpoint-mul-bugKazuki Yamaguchi2016-05-183-67/+105
| | | | | | | | | * ext/openssl/ossl_pkey_ec.c (ossl_ec_point_mul): Validate the arguments before passing to EC_POINT(s)_mul(). Add description of this method. [ruby-core:65152] [Bug #10268] * test/openssl/test_pkey_ec.rb (test_ec_point_mul): Test that OpenSSL::PKey::EC::Point#mul works.
* openssl: fix equality test methods of OpenSSL::BNKazuki Yamaguchi2016-05-183-17/+103
| | | | | | | | | | | | | | * ext/openssl/ossl_bn.c (try_convert_to_bnptr): Extracted from GetBNPtr(). This doesn't raise exception but returns NULL on error. (GetBNPtr): Raise TypeError if conversion fails. (ossl_bn_eq): Implement BN#==. (ossl_bn_eql): #eql? should not raise TypeError even if the argument is not compatible with BN. (ossl_bn_hash): Implement BN#hash. * ext/openssl/ossl_bn.c (Init_ossl_bn): Define #== and #hash. * test/openssl/test_bn.rb: Test BN#eql?, #== and #hash
* test/win32ole/test_win32ole_variant.rb: use other than Integernobu2016-05-181-2/+2
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55046 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* extension.rdoc: RB_{INTEGER,FLOAT}_TYPE_P [ci skip]nobu2016-05-182-0/+10
| | | | | | | * doc/extension.rdoc, doc/extension.rdoc (Checking Data Types): [DOC] mention RB_INTEGER_TYPE_P and RB_FLOAT_TYPE_P. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55045 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* ruby.h: RB_INTEGER_TYPE_Pnobu2016-05-188-11/+25
| | | | | | | | * include/ruby/ruby.h (RB_INTEGER_TYPE_P): new macro and underlying inline function to check if the object is an Integer (Fixnum or Bignum). git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55044 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* enum.c: fix declaration-after-statementnobu2016-05-181-1/+2
| | | | | | | * enum.c (sum_iter): workaround of mixed declarations and code. erred by -Werror=declaration-after-statement option. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55043 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* extension.rdoc: RB_TYPE_P [ci skip]nobu2016-05-182-0/+5
| | | | | | | * doc/extension.rdoc, doc/extension.rdoc (Checking Data Types): [DOC] mention RB_TYPE_P. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55042 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Optimize each_sum for hashesmrkn2016-05-182-6/+38
| | | | | | | * enum.c (enum_sum, hash_sum, hash_sum_i, enum_sum_i, sum_iter): Optimize for hashes when each method isn't redefined. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55041 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Extract int_range_sum from enum_summrkn2016-05-182-17/+27
| | | | | | | * enum.c (enum_sum, int_range_sum): Extract int_range_sum from enum_sum. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55040 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* re.c: fix up r55036nobu2016-05-173-3/+27
| | | | | | | * re.c (match_values_at): fix regression at r55036. MatchData#values_at accepts Range. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55039 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* vm_core.h: bit flagsnobu2016-05-171-5/+5
| | | | | | | * vm_core.h (rb_vm_struct, rb_thread_struct): make flags bit fields. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55038 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * re.c (match_aref): remove useless condition and call rb_fix2int.naruse2016-05-172-3/+6
| | | | | | rb_reg_nth_match handles negative index. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55037 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * re.c (match_values_at): MatchData#values_at supports named capturesnaruse2016-05-174-30/+59
| | | | | | | | [Feature #9179] * re.c (namev_to_backref_number): separeted. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55036 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * 2016-05-18svn2016-05-171-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55035 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Optimize enum_sum for a range from int to intmrkn2016-05-177-13/+56
| | | | | | | | | | | | | * enum.c (enum_sum): Optimize for a range from int to int. * test/ruby/test_enum.rb (test_range_sum): Move from test_range.rb, and add assertions for some conditions. * test/ruby/test_enum.rb (test_hash_sum): Move from test_hash.rb. * test/ruby/test_hash.rb, test/ruby/test_range.rb: Remove test_sum. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55034 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Write document of Enumerable#summrkn2016-05-172-0/+30
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55033 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Implement Enumerable#summrkn2016-05-175-0/+258
| | | | | | | | | | | | * enum.c (enum_sum): Implement Enumerable#sum. * test/ruby/test_enum.rb (test_sum): Test sum for Enumerable. * test/ruby/test_hash.rb (test_sum): Test sum for Hash. * test/ruby/test_range.rb (test_sum): Test sum for Range. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55032 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* add issue number for Array#sum incompatitbility description.akr2016-05-171-2/+3
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55031 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Describe Fixnum and Bignum integration in NEWS.akr2016-05-171-0/+13
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55030 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Use Integer instead of Fixnum and Bignum.akr2016-05-1743-109/+122
| | | | | | | | | | | | | | | | | | | | | | | | | | | * object.c, numeric.c, enum.c, ext/-test-/bignum/mul.c, lib/rexml/quickpath.rb, lib/rexml/text.rb, lib/rexml/xpath_parser.rb, lib/rubygems/specification.rb, lib/uri/generic.rb, bootstraptest/test_eval.rb, basictest/test.rb, test/-ext-/bignum/test_big2str.rb, test/-ext-/bignum/test_div.rb, test/-ext-/bignum/test_mul.rb, test/-ext-/bignum/test_str2big.rb, test/csv/test_data_converters.rb, test/date/test_date.rb, test/json/test_json_generate.rb, test/minitest/test_minitest_mock.rb, test/openssl/test_cipher.rb, test/rexml/test_jaxen.rb, test/ruby/test_array.rb, test/ruby/test_basicinstructions.rb, test/ruby/test_bignum.rb, test/ruby/test_case.rb, test/ruby/test_class.rb, test/ruby/test_complex.rb, test/ruby/test_enum.rb, test/ruby/test_eval.rb, test/ruby/test_iseq.rb, test/ruby/test_literal.rb, test/ruby/test_math.rb, test/ruby/test_module.rb, test/ruby/test_numeric.rb, test/ruby/test_range.rb, test/ruby/test_rational.rb, test/ruby/test_refinement.rb, test/ruby/test_rubyvm.rb, test/ruby/test_struct.rb, test/ruby/test_variable.rb, test/rubygems/test_gem_specification.rb, test/thread/test_queue.rb: Use Integer instead of Fixnum and Bignum. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55029 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* fix alignmentkazu2016-05-171-7/+7
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55028 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* fix typos [ci skip]kazu2016-05-171-2/+2
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55027 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * properties.svn2016-05-170-0/+0
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55026 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* forgot to commit.akr2016-05-173-0/+48
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55025 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* [Feature #12005] Unify Fixnum and Bignum into Integerakr2016-05-1725-146/+159
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * [Feature #12005] Unify Fixnum and Bignum into Integer * include/ruby/ruby.h (rb_class_of): Return rb_cInteger for fixnums. * insns.def (INTEGER_REDEFINED_OP_FLAG): Unified from FIXNUM_REDEFINED_OP_FLAG and BIGNUM_REDEFINED_OP_FLAG. * vm_core.h: Ditto. * vm_insnhelper.c (opt_eq_func): Use INTEGER_REDEFINED_OP_FLAG instead of FIXNUM_REDEFINED_OP_FLAG. * vm.c (vm_redefinition_check_flag): Use rb_cInteger instead of rb_cFixnum and rb_cBignum. (C): Use Integer instead of Fixnum and Bignum. * numeric.c (fix_succ): Removed. (Init_Numeric): Define Fixnum as Integer. * bignum.c (bignew): Use rb_cInteger instead of Rb_cBignum. (rb_int_coerce): replaced from rb_big_coerce and return fixnums as-is. (Init_Bignum): Define Bignum as Integer. Don't define ===. * error.c (builtin_class_name): Return "Integer" for fixnums. * sprintf.c (ruby__sfvextra): Use rb_cInteger instead of rb_cFixnum. * ext/-test-/testutil: New directory to test. Currently it provides utilities for fixnum and bignum. * ext/json/generator/generator.c: Define mInteger_to_json. * lib/mathn.rb (Fixnum#/): Redefinition removed. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55024 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* configure.in: declare as NORETURNnobu2016-05-172-0/+9
| | | | | | | | * configure.in (RUBY_CHECK_BUILTIN_SETJMP): declare t as NORETURN to suppress warnings by -Wsuggest-attribute=noreturn. [ruby-core:75510] [Bug #12383] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55023 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * 2016-05-17svn2016-05-171-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55022 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* configure.in: RUBY_CHECK_SETJMPnobu2016-05-172-7/+20
| | | | | | | * configure.in (RUBY_CHECK_SETJMP): needs the header and proper arguments for builtin setjmp functions. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55021 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * enc/unicode.h: Additional uses of ONIG_CASE_MAPPING compilation switchduerst2016-05-162-0/+8
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55020 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * append newline at EOF.svn2016-05-161-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55019 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * include/ruby/oniguruma.h: Introducing ONIG_CASE_MAPPING compilationduerst2016-05-163-0/+24
| | | | | | | | | switch * include/ruby/oniguruma.h, enc/unicode.h: Using ONIG_CASE_MAPPING compilation switch git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55018 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * gems/bundled_gems: Update xmlrpc-0.1.1. xmlrpc-0.1.0 didn't allowhsbt2016-05-162-1/+6
| | | | | | to install on 2.4.0dev. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55017 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * test_handle.rb: refine test_fallback_to_ansinobu2016-05-161-1/+2
| | | | | | | | * test/fiddle/test_handle.rb (test_fallback_to_ansi): ensure that the fallback result equals to ANSI version. [ruby-core:75494] [Bug #12377] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55016 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* configure.in: revert macro namesnobu2016-05-163-3/+18
| | | | | | | | | | * configure.in (FUNC_STDCALL, FUNC_CDECL, FUNC_FASTCALL): set macro names explicitly to the old names, which are accidentally changed at r54985, for backward compatibilities. fiddle also depends on these names to fallback to ANSI names. [ruby-core:75494] [Bug #12377] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55015 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * lib/xmlrpc: Removed empty directory. It could not be deleted by git-svn.hsbt2016-05-160-0/+0
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55014 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * lib/xmlrpc.rb, lib/xmlrpc/*, test/xmlrpc: XMLRPC is bundled gemhsbt2016-05-1634-4418/+8
| | | | | | | on Ruby 2.4. [Feature #12160][ruby-core:74239] * gems/bundled_gems: ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55013 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* extmk.rb: fix skipping messagesnobu2016-05-161-9/+12
| | | | | | | * ext/extmk.rb (extmake): select the message if skipped because its parent extension is not configured. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55012 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * 2016-05-16svn2016-05-151-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55011 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* proc.c: fix RDoc of Proc#===/call/yield/[]normal2016-05-152-0/+16
| | | | | | | | | | | | | | | | | [Bug #12332] Since r52050 ("proc.c: enable optimization of Proc#call") for [Feature #11569], we need to maintain this documentation in a way RDoc comprehends. This is probably not worth fixing in RDoc itself since this uses a non-standard internal C API which is subject to change without notice. ref: http://mid.gmane.org/20160429212836.GA16605@dcvr.yhbt.net http://mid.gmane.org/1461959651.806728.670.51764@mail.rambler.ru http://blade.nagaokaut.ac.jp/ruby/ruby-talk/435458 git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55010 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* io.c: use PRI_OFFT_PREFIX for off_tnobu2016-05-151-9/+2
| | | | | | | * io.c (do_io_advise): use configured PRI_OFFT_PREFIX instead of PRI_OFF_T_PREFIX to format off_t properly on Cygwin. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55009 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* don't use keeper thread. [Bug #12342]seki2016-05-153-66/+50
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55008 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * array.c (rb_ary_entry): extract rb_ary_elt to organize if-conditionsnaruse2016-05-152-2/+14
| | | | | | and check whether is is embdeded at once. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55007 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* random.c: suppress a warningnobu2016-05-151-1/+5
| | | | | | | * random.c (random_ulong_limited): suppress a shift count warning when unsigned long is 32bits. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55006 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* vm_insnhelper.c: deprecated constant in classnobu2016-05-154-9/+24
| | | | | | | * vm_insnhelper.c (vm_get_ev_const): warn deprecated constant even in the class context. [ruby-core:75505] [Bug #12382] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55005 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* random.c: clear seednobu2016-05-141-0/+1
| | | | | | * random.c (rand_init): clear packed seed value explicitly. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55004 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * 2016-05-15svn2016-05-141-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55003 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * iseq.h (struct iseq_compile_data): use struct rb_id_tablenaruse2016-05-144-8/+32
| | | | | | | | | | | | | | | instead of st_table. * iseq.c (prepare_iseq_build): don't allocate ivar_cache_table until it has at least one element. * iseq.c (compile_data_free): free ivar_cache_table only if it is allocated. * compile.c (get_ivar_ic_value): allocate if the table is not allocated yet. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55002 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* ChangeLog: GitHub referencenobu2016-05-141-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55000 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* lib/mkmf.rb: use xsystem to pkg-config --existsnobu2016-05-142-1/+7
| | | | | | | | * lib/mkmf.rb (pkg_config): use xsystem consistently to set up library path environment variable as well as latter pkg-config calls. [ruby-dev:49619] [Bug #12379] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54999 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* test_rand.rb: tests for seedsnobu2016-05-131-0/+14
| | | | | | | * test/ruby/test_rand.rb: tests for Random.raw_seed and Random.new_seed. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54998 b2dd03c8-39d4-4d8f-98ff-823fe69b080e