gcc (GCC) 4.4.7 20120313 (Red Hat 4.4.7-18) reportedly fails to compile
cf: https://rubyci.org/logs/rubyci.s3.amazonaws.com/centos6/ruby-trunk/log/20180726T093003Z.fail.html.gz


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64119 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
shyouhei 2018-07-30 07:53:24 +00:00
Родитель d83536c980
Коммит ab740cbb75
2 изменённых файлов: 15 добавлений и 18 удалений

11
mjit.c
Просмотреть файл

@ -352,6 +352,10 @@ form_args(int num, ...)
return res;
}
COMPILER_WARNING_PUSH
#ifdef __GNUC__
COMPILER_WARNING_IGNORED(-Wdeprecated-declarations)
#endif
/* Start an OS process of executable PATH with arguments ARGV. Return
PID of the process.
TODO: Use the same function in process.c */
@ -387,13 +391,7 @@ start_process(const char *path, char *const *argv)
}
dev_null = rb_cloexec_open(ruby_null_device, O_WRONLY, 0);
COMPILER_WARNING_PUSH;
#ifdef __GNUC__
COMPILER_WARNING_IGNORED(-Wdeprecated-declarations);
#endif
if ((pid = vfork()) == 0) {
COMPILER_WARNING_POP;
umask(0077);
if (mjit_opts.verbose == 0) {
/* CC can be started in a thread using a file which has been
@ -415,6 +413,7 @@ start_process(const char *path, char *const *argv)
#endif
return pid;
}
COMPILER_WARNING_POP
/* Execute an OS process of executable PATH with arguments ARGV.
Return -1 or -2 if failed to execute, otherwise exit code of the process.

Просмотреть файл

@ -3959,6 +3959,10 @@ disable_child_handler_fork_child(struct child_handler_disabler_state *old, char
return 0;
}
COMPILER_WARNING_PUSH
#ifdef __GNUC__
COMPILER_WARNING_IGNORED(-Wdeprecated-declarations)
#endif
static rb_pid_t
retry_fork_async_signal_safe(int *status, int *ep,
int (*chfunc)(void*, char *, size_t), void *charg,
@ -3972,10 +3976,6 @@ retry_fork_async_signal_safe(int *status, int *ep,
while (1) {
prefork();
disable_child_handler_before_fork(&old);
COMPILER_WARNING_PUSH;
#ifdef __GNUC__
COMPILER_WARNING_IGNORED(-Wdeprecated-declarations);
#endif
#ifdef HAVE_WORKING_VFORK
if (!has_privilege())
pid = vfork();
@ -3984,7 +3984,6 @@ retry_fork_async_signal_safe(int *status, int *ep,
#else
pid = fork();
#endif
COMPILER_WARNING_POP;
if (pid == 0) {/* fork succeed, child process */
int ret;
close(ep[0]);
@ -4009,6 +4008,7 @@ retry_fork_async_signal_safe(int *status, int *ep,
return -1;
}
}
COMPILER_WARNING_POP
rb_pid_t
rb_fork_async_signal_safe(int *status, int (*chfunc)(void*, char *, size_t), void *charg, VALUE fds,
@ -4040,6 +4040,10 @@ rb_fork_async_signal_safe(int *status, int (*chfunc)(void*, char *, size_t), voi
return pid;
}
COMPILER_WARNING_PUSH
#ifdef __GNUC__
COMPILER_WARNING_IGNORED(-Wdeprecated-declarations)
#endif
rb_pid_t
rb_fork_ruby(int *status)
{
@ -4053,14 +4057,7 @@ rb_fork_ruby(int *status)
prefork();
disable_child_handler_before_fork(&old);
before_fork_ruby();
COMPILER_WARNING_PUSH;
#ifdef __GNUC__
COMPILER_WARNING_IGNORED(-Wdeprecated-declarations);
#endif
pid = fork();
#ifdef __GNUC__
COMPILER_WARNING_POP;
#endif
err = errno;
after_fork_ruby();
disable_child_handler_fork_parent(&old); /* yes, bad name */
@ -4071,6 +4068,7 @@ rb_fork_ruby(int *status)
return -1;
}
}
COMPILER_WARNING_POP
#endif