Bug #6633

MinGW: broken build caused by changes in process.c (execve)

Added by Luis Lavena almost 3 years ago. Updated almost 3 years ago.

[ruby-core:45794]
Status:Closed
Priority:High
Assignee:Akira Tanaka
ruby -v:trunk r36201 Backport:

Description

=begin
Hello,

I find myself unable to compile trunk (r36201) caused by errors in process.c (execve):

compiling ../process.c
../process.c: In function 'proc_exec_cmd':
../process.c:1138:9: warning: passing argument 2 of 'execve' from incompatible pointer type [enabled by default]
c:\users\worker\tools\devkit\tdm-32-4.6.1\mingw\bin../lib/gcc/mingw32/4.6.1/../../../../include/process.h:119:42: note:
expected 'const char * const*' but argument is of type 'char *'
../process.c:1138:9: warning: passing argument 3 of 'execve' from incompatible pointer type [enabled by default]
c:\users\worker\tools\devkit\tdm-32-4.6.1\mingw\bin../lib/gcc/mingw32/4.6.1/../../../../include/process.h:119:42: note:
expected 'const char * const
' but argument is of type 'char *'
../process.c: In function 'rb_execarg_addopt':
../process.c:1582:18: error: 'options' undeclared (first use in this function)
../process.c:1582:18: note: each undeclared identifier is reported only once for each function it appears in
../process.c: In function 'save_env':
../process.c:2711:11: warning: variable 'soptions' set but not used [-Wunused-but-set-variable]
../process.c: In function 'p_uid_change_privilege':
../process.c:4895:14: warning: variable 'uid' set but not used [-Wunused-but-set-variable]
../process.c: In function 'p_gid_change_privilege':
../process.c:5598:14: warning: variable 'gid' set but not used [-Wunused-but-set-variable]
make: *
* [process.o] Error 1

Above error happens under GCC 4.5.2, 4.6.1 and 4.6.3 in both x86 and x64 (mingw and mingw-w64 respectively)

Base Ruby is 1.9.3-p194 [i386-mingw32]

=end

History

#1 Updated by Akira Tanaka almost 3 years ago

2012/6/23 luislavena (Luis Lavena) luislavena@gmail.com:

Issue #6633 has been reported by luislavena (Luis Lavena).

I find myself unable to compile trunk (r36201) caused by errors in process.c (execve):

compiling ../process.c
../process.c: In function 'proc_exec_cmd':
../process.c:1138:9: warning: passing argument 2 of 'execve' from incompatible pointer type [enabled by default]
c:\users\worker\tools\devkit\tdm-32-4.6.1\mingw\bin../lib/gcc/mingw32/4.6.1/../../../../include/process.h:119:42: note:
expected 'const char * const*' but argument is of type 'char *'
../process.c:1138:9: warning: passing argument 3 of 'execve' from incompatible pointer type [enabled by default]
c:\users\worker\tools\devkit\tdm-32-4.6.1\mingw\bin../lib/gcc/mingw32/4.6.1/../../../../include/process.h:119:42: note:
expected 'const char * const
' but argument is of type 'char *'
../process.c: In function 'rb_execarg_addopt':
../process.c:1582:18: error: 'options' undeclared (first use in this function)
../process.c:1582:18: note: each undeclared identifier is reported only once for each function it appears in
../process.c: In function 'save_env':
../process.c:2711:11: warning: variable 'soptions' set but not used [-Wunused-but-set-variable]
../process.c: In function 'p_uid_change_privilege':
../process.c:4895:14: warning: variable 'uid' set but not used [-Wunused-but-set-variable]
../process.c: In function 'p_gid_change_privilege':
../process.c:5598:14: warning: variable 'gid' set but not used [-Wunused-but-set-variable]
make: *
* [process.o] Error 1

Oops. I hope r36202 fix the problem.
--
Tanaka Akira

#2 Updated by Luis Lavena almost 3 years ago

  • Status changed from Assigned to Closed
  • % Done changed from 0 to 100

=begin
akr (Akira Tanaka) wrote:

Oops. I hope r36202 fix the problem.

Yes, it does, thank you.

I'm still seeing a bunch of warnings:

compiling ../process.c
../process.c: In function 'proc_exec_cmd':
../process.c:1138:9: warning: passing argument 2 of 'execve' from incompatible pointer type [enabled by default]
c:\users\worker\tools\devkit\tdm-32-4.6.1\mingw\bin../lib/gcc/mingw32/4.6.1/../../../../include/process.h:119:42: note:
expected 'const char * const*' but argument is of type 'char *'
../process.c:1138:9: warning: passing argument 3 of 'execve' from incompatible pointer type [enabled by default]
c:\users\worker\tools\devkit\tdm-32-4.6.1\mingw\bin../lib/gcc/mingw32/4.6.1/../../../../include/process.h:119:42: note:
expected 'const char * const
' but argument is of type 'char **'
../process.c: In function 'proc_spawn_cmd':
../process.c:1346:11: warning: unused variable 'options' [-Wunused-variable]
../process.c: In function 'save_env':
../process.c:2708:11: warning: variable 'soptions' set but not used [-Wunused-but-set-variable]
../process.c: In function 'p_uid_change_privilege':
../process.c:4892:14: warning: variable 'uid' set but not used [-Wunused-but-set-variable]
../process.c: In function 'p_gid_change_privilege':
../process.c:5595:14: warning: variable 'gid' set but not used [-Wunused-but-set-variable]

Closing this out as build has been fixed.

Thank you again.
=end

Also available in: Atom PDF