summaryrefslogtreecommitdiff
path: root/internal
diff options
context:
space:
mode:
authorNobuyoshi Nakada <nobu@ruby-lang.org>2020-04-15 00:59:23 +0900
committerNobuyoshi Nakada <nobu@ruby-lang.org>2020-04-15 21:00:53 +0900
commitd72fd1e45b192ab507f8170ceec1328c2aae7bb1 (patch)
treeabdba30a38cd0efcb2d937abd46386c138d56740 /internal
parent69b3e0ac59f99bbd7e9a76af283f0be1991a3bde (diff)
Added rb_syserr_new_path
Similar to rb_syserr_fail_path, but just returns the created exception instance instead of raising it.
Notes
Notes: Merged: https://github.com/ruby/ruby/pull/3035
Diffstat (limited to 'internal')
-rw-r--r--internal/error.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/internal/error.h b/internal/error.h
index 5a9b6cd834..b6fd25b915 100644
--- a/internal/error.h
+++ b/internal/error.h
@@ -32,9 +32,11 @@
#ifdef RUBY_FUNCTION_NAME_STRING
# define rb_sys_fail_path(path) rb_sys_fail_path_in(RUBY_FUNCTION_NAME_STRING, path)
# define rb_syserr_fail_path(err, path) rb_syserr_fail_path_in(RUBY_FUNCTION_NAME_STRING, (err), (path))
+# define rb_syserr_new_path(err, path) rb_syserr_new_path_in(RUBY_FUNCTION_NAME_STRING, (err), (path))
#else
# define rb_sys_fail_path(path) rb_sys_fail_str(path)
# define rb_syserr_fail_path(err, path) rb_syserr_fail_str((err), (path))
+# define rb_syserr_new_path(err, path) rb_syserr_new_str((err), (path))
#endif
/* error.c */
@@ -79,6 +81,7 @@ int rb_bug_reporter_add(void (*func)(FILE *, void *), void *data);
#ifdef RUBY_FUNCTION_NAME_STRING
NORETURN(void rb_sys_fail_path_in(const char *func_name, VALUE path));
NORETURN(void rb_syserr_fail_path_in(const char *func_name, int err, VALUE path));
+VALUE rb_syserr_new_path_in(const char *func_name, int n, VALUE path);
#endif
RUBY_SYMBOL_EXPORT_END