aboutsummaryrefslogtreecommitdiffstats
path: root/io.c
diff options
context:
space:
mode:
authornobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2019-04-18 21:56:55 +0000
committernobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2019-04-18 21:56:55 +0000
commit3ee0648dc7a5465b2cbadd7246fc2edbd676d759 (patch)
tree02b758f59e65fa4ea9b6861956807ba49be638d4 /io.c
parent4751caecc357c313c3c81c3d422a3cbc880c6ecc (diff)
downloadruby-3ee0648dc7a5465b2cbadd7246fc2edbd676d759.tar.gz
io.c: warn non-nil $,
* array.c (rb_ary_join_m): warn use of non-nil $,. * io.c (rb_output_fs_setter): warn when set to non-nil value. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67606 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'io.c')
-rw-r--r--io.c12
1 files changed, 11 insertions, 1 deletions
diff --git a/io.c b/io.c
index 73108f7747..7aba8be12f 100644
--- a/io.c
+++ b/io.c
@@ -7525,6 +7525,16 @@ rb_f_printf(int argc, VALUE *argv)
return Qnil;
}
+static void
+rb_output_fs_setter(VALUE val, ID id, VALUE *var)
+{
+ rb_str_setter(val, id, &val);
+ if (!NIL_P(val)) {
+ rb_warn("non-nil $, will be deprecated");
+ }
+ *var = val;
+}
+
/*
* call-seq:
* ios.print -> nil
@@ -13172,7 +13182,7 @@ Init_IO(void)
rb_define_method(rb_cIO, "initialize", rb_io_initialize, -1);
rb_output_fs = Qnil;
- rb_define_hooked_variable("$,", &rb_output_fs, 0, rb_str_setter);
+ rb_define_hooked_variable("$,", &rb_output_fs, 0, rb_output_fs_setter);
rb_default_rs = rb_fstring_lit("\n"); /* avoid modifying RS_default */
rb_gc_register_mark_object(rb_default_rs);