Add errno_ptr property for Universal Parser
This commit is contained in:
parent
02973b78f4
commit
4374236e95
@ -450,6 +450,12 @@ ruby_verbose2(void)
|
|||||||
return ruby_verbose;
|
return ruby_verbose;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static int *
|
||||||
|
rb_errno_ptr2(void)
|
||||||
|
{
|
||||||
|
return rb_errno_ptr();
|
||||||
|
}
|
||||||
|
|
||||||
static int
|
static int
|
||||||
type_p(VALUE obj, int t)
|
type_p(VALUE obj, int t)
|
||||||
{
|
{
|
||||||
@ -724,6 +730,7 @@ rb_parser_config_initialize(rb_parser_config_t *config)
|
|||||||
config->bug = rb_bug;
|
config->bug = rb_bug;
|
||||||
config->fatal = rb_fatal;
|
config->fatal = rb_fatal;
|
||||||
config->verbose = ruby_verbose2;
|
config->verbose = ruby_verbose2;
|
||||||
|
config->errno_ptr = rb_errno_ptr2;
|
||||||
|
|
||||||
config->make_backtrace = rb_make_backtrace;
|
config->make_backtrace = rb_make_backtrace;
|
||||||
|
|
||||||
|
@ -1352,6 +1352,7 @@ typedef struct rb_parser_config_struct {
|
|||||||
void (*bug)(const char *fmt, ...);
|
void (*bug)(const char *fmt, ...);
|
||||||
void (*fatal)(const char *fmt, ...);
|
void (*fatal)(const char *fmt, ...);
|
||||||
VALUE (*verbose)(void);
|
VALUE (*verbose)(void);
|
||||||
|
int *(*errno_ptr)(void);
|
||||||
|
|
||||||
/* VM */
|
/* VM */
|
||||||
VALUE (*make_backtrace)(void);
|
VALUE (*make_backtrace)(void);
|
||||||
|
@ -331,6 +331,8 @@ struct rb_imemo_tmpbuf_struct {
|
|||||||
#define rb_fatal p->config->fatal
|
#define rb_fatal p->config->fatal
|
||||||
#undef ruby_verbose
|
#undef ruby_verbose
|
||||||
#define ruby_verbose p->config->verbose()
|
#define ruby_verbose p->config->verbose()
|
||||||
|
#undef errno
|
||||||
|
#define errno (*p->config->errno_ptr())
|
||||||
|
|
||||||
#define rb_make_backtrace p->config->make_backtrace
|
#define rb_make_backtrace p->config->make_backtrace
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user