Bug #6169
closedCompile error "implicit declaration of function 'ruby_setreuid'", "'ruby_setregid'"
Description
=begin
When compiling Ruby 1.9.3 (I've tested 1.9.3p0 and 1.9.3p125), process.c produces a compile error
The following is the GCC output for the error:
compiling process.c
process.c: In function 'p_sys_setreuid':
process.c:4110: error: implicit declaration of function 'ruby_setreuid'
process.c: In function 'ruby_setreuid':
process.c:4217: warning: comparison between signed and unsigned
process.c:4218: warning: comparison between signed and unsigned
process.c:4221: warning: comparison between signed and unsigned
process.c: In function 'p_sys_setregid':
process.c:4465: error: implicit declaration of function 'ruby_setregid'
process.c: In function 'ruby_setregid':
process.c:4929: warning: comparison between signed and unsigned
process.c:4930: warning: comparison between signed and unsigned
process.c:4933: warning: comparison between signed and unsigned
make: *** [process.o] Error 1
==== Environment
GCC version: 4.0.1
OS: Mac OS X 10.4.11 Intel
=end
Updated by tw (Ted Wing) almost 13 years ago
=begin
This is fixed by removing lines 111-116 from (({process.c})), reproduced here:
#ifdef BROKEN_SETREUID
#define setreuid ruby_setreuid
#endif
#ifdef BROKEN_SETREGID
#define setregid ruby_setregid
#endif
Edit: forgot to mention that this fix comes thanks to drbrain on irc.
=end
Updated by nobu (Nobuyoshi Nakada) over 12 years ago
- Status changed from Open to Closed
- % Done changed from 0 to 100
This issue was solved with changeset r35221.
Ted, thank you for reporting this issue.
Your contribution to Ruby is greatly appreciated.
May Ruby be with you.
- process.c (setreuid, setregid): suppress warnings.
[ruby-core:43374][Bug #6169]