47148 Commits

Author SHA1 Message Date
nobu
8ddf0263bb Fix DecimalInteger converting to octal bug
Previously if the input started with a '0' then it will be converted
as octal even though it has been specified as a decimal. This commit
forces the number to be interpreted as a decimal.

[ruby-core:81927] [Bug #13722] [Fix GH-1665]
Author:    william <william.mccumstie@outlook.com>

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59273 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-07-06 11:49:03 +00:00
rhe
06a3a10acf string.c: preserve coderange in String#setbyte
Fix a wrong jump so replacing a byte in an ASCII-only string with an
ASCII character won't clear the coderange.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59272 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-07-06 07:21:17 +00:00
rhe
2c8cec96cc string.c: remove dead code in str_fill_term()
The length of a string never exceeds the capacity.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59271 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-07-06 07:21:16 +00:00
svn
1798deb210 * 2017-07-06
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59270 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-07-06 04:12:52 +00:00
nobu
d9d8ca0b8f lexer.rb: ignore dedented space
* ext/ripper/lib/ripper/lexer.rb (on_heredoc_dedent): replace an
  empty string content because of dedentation with :on_ignored_sp.
  an empty token makes the sorted order unstable.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59269 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-07-06 04:12:51 +00:00
rhe
650e758060 un.rb: use OpenSSL::PKey.read instead of OpenSSL::PKey::RSA.new
Also, error out if --ssl-private-key option is not given, since
specifying only the certificate makes no sense.  [Feature #13714]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59268 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-07-05 09:05:53 +00:00
nobu
af683bd16c debug.c: add FMODE constants
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59266 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-07-05 06:32:54 +00:00
nobu
2c59dd61f1 un.rb: support https
* lib/un.rb: add https support.  based on the patch by Flavio
  Castelli <flavio@castelli.name> in [ruby-core:81901].
  [Feature #13714]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59265 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-07-05 06:27:43 +00:00
normal
6899d6a98c tool/mk_call_iseq_optimized.rb: fix generated comment
"tool/mkcall_iseq.rb" never existed in our repo.

* tool/mk_call_iseq_optimized.rb: fix generated comment

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59264 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-07-04 17:27:40 +00:00
svn
9e5e93f590 * properties.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59263 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-07-04 16:02:20 +00:00
mame
f85bc2906b Use lcov visualizer for gcov statistics
This experimental feature is only for Ruby-core team, not for casual users.

Usage: `./configure --enable-gcov && make && make exam && make lcov`

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59262 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-07-04 16:02:19 +00:00
svn
2b8bf0fc4a * 2017-07-05
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59261 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-07-04 16:02:18 +00:00
mame
0ee154bee2 tool/run-gcov.rb: ignore rubyspec_temp directory
rubyspec compiles the extension libraries for capi specs in a temporary
directory, and after that, deletes the directory.  gcov resurrects the
directory to save coverage statistics (.gcda files).  However, the
source and profiling artifacts (.gcno files) have been deleted.
So, we need to ignore the .gcda files.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59260 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-07-04 16:02:18 +00:00
nobu
1c34f0b837 vm_args.c: improve keyword argument errors
* vm_args.c (argument_arity_error): improve required keyword
  argument errors when non-keyword arguments given.
  [ruby-core:79439] [Bug #13196]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59259 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-07-04 05:42:04 +00:00
nobu
202fbe3046 time.c: preserve marshalled timezone
* time.c (time_add): preserve timezone name restored by Marshal.
  [ruby-core:81892] [Bug #13710]

* time.c (time_mload): reset localtime if having timezone.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59258 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-07-04 04:23:06 +00:00
svn
38c6daaabb * 2017-07-04
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59257 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-07-03 23:42:13 +00:00
nobu
da373e5394 win32.c: restrict cursor move
* win32/win32.c (constat_apply): restrict cursor move in visible
  screen only.  [ruby-core:81883] [Bug #13707]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59256 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-07-03 23:42:12 +00:00
nobu
66245e1b2b win32.c: clear relative to screen
* win32/win32.c (constat_apply): clear visible screen only, not
  the entire buffer.  [ruby-core:81883] [Bug #13707]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59255 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-07-03 10:56:21 +00:00
nobu
2c4d43082c win32.c: cursor relative to screen
* win32/win32.c (constat_apply): move relative to visible screen,
  not the entire buffer.  [ruby-core:81883] [Bug #13707]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59254 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-07-03 10:22:15 +00:00
naruse
7ac29740a1 Suppress warning: method redefined; discarding old ==
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59253 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-07-03 08:08:29 +00:00
svn
5c16c47b78 * 2017-07-03
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59252 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-07-03 02:13:59 +00:00
hsbt
4680341cac Added sync to all of default gems command.
* Fix command of FileUtils sync operation. test/fileutils is a directory.
  * When not given gem name option, do sync all of gems.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59251 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-07-03 02:13:59 +00:00
ktsj
0ff27c4604 Symbol#== should be able to be redefined
* vm.c (vm_init_redefined_flag): set redefinition flag for Symbol#==.
  The bug was introduced in r58895.

* test/ruby/test_symbol.rb: test for above.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59250 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-07-02 10:38:38 +00:00
svn
b08892c4ae * 2017-07-02
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59249 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-07-01 21:17:26 +00:00
eregon
aa7f2592d8 Used a fixed seed in Random#rand spec
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59248 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-07-01 21:17:25 +00:00
nobu
f2d1848441 parse.y: f_margs parser events
* parse.y (f_margs): implemented parser events for massign
  formal arguments.  [ruby-core:81848] [Bug #13701]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59246 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-07-01 02:01:05 +00:00
nobu
844ca35a92 parse.y: mlhs_add_post
* parse.y (mlhs_add_post): new parser event corresponding to
  POSTARG.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59245 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-07-01 01:51:17 +00:00
svn
9ded671461 * 2017-07-01
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59244 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-07-01 01:29:23 +00:00
nobu
046f8469f3 test_parser_events.rb: simplify
* test/ripper/dummyparser.rb (DummyParser): simplified mlhs node
  representation.

* test/ripper/test_parser_events.rb (test_mlhs_add_star):
  simplified assertions.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59243 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-07-01 01:29:22 +00:00
nobu
24171da222 main.c: RUBY_DEBUG_ENV in devel
* main.c (RUBY_DEBUG_ENV): default to enabled in the development
  version.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59213 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-06-30 04:19:12 +00:00
nobu
703675da95 compile.c: dump iseq
* compile.c (append_compile_error): raise a fatal error when
  compile_debug is enabled.

* compile.c (COMPILE_ERROR): dump the disassembled instruction
  instruction sequence always.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59212 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-06-30 02:09:42 +00:00
nobu
3bf4c46bb8 vm_insnhelper.c: dump iseq
* vm_insnhelper.c (vm_stack_consistency_error): raise a fatal
  error with the disassembled instruction sequence, in the
  development version, instead of very rarely useful rb_bug in
  such case.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59211 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-06-30 01:56:53 +00:00
normal
940fa3b824 array.c: more predefined IDs
* array.c (id_cmp): change to macro for OPTIMIZED_CMP
  (rb_ary_repeated_permutation_size): s/id_power/idPow/
  (Init_Array): remove id_cmp and id_power

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59210 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-06-29 22:40:36 +00:00
svn
5f51ee3a4b * 2017-06-30
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59209 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-06-29 22:34:19 +00:00
normal
f7f097a369 remove unused rb_obj_basic_to_s_p function
This hasn't been used since r36709 (2012-08-15)
("Kernel#inspect: improve consistency and do not call #to_s.")
and was never part of public API in include/ruby/

* class.c (rb_obj_basic_to_s_p): remove function
* internal.h (rb_obj_basic_to_s_p): remove declaration

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59208 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-06-29 22:34:19 +00:00
svn
6dcfcfd4a1 * properties.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59207 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-06-29 14:35:39 +00:00
svn
904b527f29 * append newline at EOF.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59206 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-06-29 14:35:39 +00:00
eregon
5b593e3889 Update to ruby/spec@abf1700
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59205 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-06-29 14:35:37 +00:00
svn
6a4aa4838c * properties.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59204 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-06-29 14:35:11 +00:00
eregon
d55cd34ba8 Update to ruby/mspec@021a119
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59203 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-06-29 14:35:09 +00:00
nobu
0a11abfc7e compile.c: disallow next in once
* compile.c (iseq_compile_each0): turned dregx context in "once"
  into "guarded" type from "block" type, to disallow `next`,
  `break`, `redo` as well as outside "once".
  [ruby-core:81805] [Bug #13690]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59202 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-06-29 04:01:30 +00:00
svn
f73498196f * 2017-06-29
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59201 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-06-28 15:25:31 +00:00
ko1
5041f548dd introduce rb_fiber_t::first_proc.
* cont.c (rb_fiber_t): add rb_fiber_t::first_proc and do not use
  rb_thread_t::first_proc which should be thread local.
  [Bug #13689]

* test/ruby/test_thread.rb: test for [Bug #13689].


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59200 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-06-28 15:25:30 +00:00
ko1
8dd9c12c58 move fields to ec.
* vm_core.h (rb_thread.h): move errinfo and trace_arg to
  rb_execution_context_t.

* cont.c (fiber_switch, rb_cont_call): do not restore "trace_arg" here.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59199 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-06-28 14:27:49 +00:00
svn
75392e45f1 * properties.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59198 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-06-28 10:18:04 +00:00
hsbt
9ec55ed9f2 Added sync tool for default gems from github master.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59197 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-06-28 10:18:03 +00:00
nobu
f78d92c5ca parse.y: fix token
* parse.y (parser_parse_string): return proper token tREGEXP_END
  at unterminated regexp.  [Bug #13363]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59196 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-06-28 06:13:00 +00:00
ko1
957d1ccdf9 move fields to ec.
* vm_core.h (rb_thread_t): move root_lep, root_svar and ensure_list
  to rb_execution_context_t.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59195 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-06-28 06:09:06 +00:00
nobu
7c7d74365d parse.y: add ellipsis
* parse.y (parser_yyerror): add ellipsis properly when error line
  is truncated.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59194 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-06-28 05:38:27 +00:00
ko1
3462dd3609 fix to check thread type
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59193 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-06-28 04:57:02 +00:00