aboutsummaryrefslogtreecommitdiffstats
path: root/error.c
diff options
context:
space:
mode:
authornobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2015-02-06 08:37:24 +0000
committernobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2015-02-06 08:37:24 +0000
commit18db8cea6ae5ff22353e32a4b26d421b5f5c4c51 (patch)
treed356a24e0180a3a710760d24d392818374443ea2 /error.c
parentae2d32304bf34dc01de041c7d0fb50c07bc6adf2 (diff)
downloadruby-18db8cea6ae5ff22353e32a4b26d421b5f5c4c51.tar.gz
error.c: rb_sys_enc_warning
* error.c (rb_sys_enc_warning): new function to show warning and error message with the encoding. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49527 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'error.c')
-rw-r--r--error.c52
1 files changed, 52 insertions, 0 deletions
diff --git a/error.c b/error.c
index 3cb068dfbf..b92d886832 100644
--- a/error.c
+++ b/error.c
@@ -231,6 +231,22 @@ rb_warn(const char *fmt, ...)
rb_write_error_str(mesg);
}
+#if 0
+void
+rb_enc_warn(rb_encoding *enc, const char *fmt, ...)
+{
+ VALUE mesg;
+ va_list args;
+
+ if (NIL_P(ruby_verbose)) return;
+
+ va_start(args, fmt);
+ mesg = warning_string(enc, fmt, args);
+ va_end(args);
+ rb_write_error_str(mesg);
+}
+#endif
+
/* rb_warning() reports only in verbose mode */
void
rb_warning(const char *fmt, ...)
@@ -246,6 +262,22 @@ rb_warning(const char *fmt, ...)
rb_write_error_str(mesg);
}
+#if 0
+void
+rb_enc_warning(rb_encoding *enc, const char *fmt, ...)
+{
+ VALUE mesg;
+ va_list args;
+
+ if (!RTEST(ruby_verbose)) return;
+
+ va_start(args, fmt);
+ mesg = warning_string(enc, fmt, args);
+ va_end(args);
+ rb_write_error_str(mesg);
+}
+#endif
+
/*
* call-seq:
* warn(msg, ...) -> nil
@@ -2110,6 +2142,26 @@ rb_sys_warning(const char *fmt, ...)
}
void
+rb_sys_enc_warning(rb_encoding *enc, const char *fmt, ...)
+{
+ VALUE mesg;
+ va_list args;
+ int errno_save;
+
+ errno_save = errno;
+
+ if (!RTEST(ruby_verbose)) return;
+
+ va_start(args, fmt);
+ mesg = warning_string(enc, fmt, args);
+ va_end(args);
+ rb_str_set_len(mesg, RSTRING_LEN(mesg)-1);
+ rb_str_catf(mesg, ": %s\n", strerror(errno_save));
+ rb_write_error_str(mesg);
+ errno = errno_save;
+}
+
+void
rb_load_fail(VALUE path, const char *err)
{
VALUE mesg = rb_str_buf_new_cstr(err);