aboutsummaryrefslogtreecommitdiffstats
path: root/load.c
diff options
context:
space:
mode:
authornobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2017-04-25 08:17:24 +0000
committernobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2017-04-25 08:17:24 +0000
commit51130a40f8cbcd076db4148c3b4ef67b4a1502bd (patch)
tree775945357a22bac1bdfce41f16b7e1ee23c7a8d0 /load.c
parent2d24e91685668f9d51fca00a4f5ca93016a5cdba (diff)
downloadruby-51130a40f8cbcd076db4148c3b4ef67b4a1502bd.tar.gz
load.c: backtrace of circular require
* load.c (load_lock): print backtrace of circular require via `Warning.warn` [ruby-core:80850] [Bug #13505] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58471 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'load.c')
-rw-r--r--load.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/load.c b/load.c
index 5adef7cdd0..cba2763749 100644
--- a/load.c
+++ b/load.c
@@ -719,6 +719,8 @@ rb_f_load(int argc, VALUE *argv)
return Qtrue;
}
+extern VALUE rb_mWarning;
+
static char *
load_lock(const char *ftptr)
{
@@ -742,7 +744,7 @@ load_lock(const char *ftptr)
}
if (RTEST(ruby_verbose)) {
rb_warning("loading in progress, circular require considered harmful - %s", ftptr);
- rb_backtrace_print_to(rb_stderr);
+ rb_backtrace_each(rb_warning_warn, rb_mWarning);
}
switch (rb_thread_shield_wait((VALUE)data)) {
case Qfalse: