[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Test 52 failure on AIX, HP-UX, Solaris
From: |
Juan Manuel Guerrero |
Subject: |
Re: Test 52 failure on AIX, HP-UX, Solaris |
Date: |
Sat, 6 Feb 2010 14:06:32 +0100 |
User-agent: |
KMail/1.9.10 |
Am Freitag, 5. Februar 2010 schrieb Joel E. Denny:
> To the Cc, I'm adding Didier Godefroy, who reported the Tru64 bug
> originally, and Juan Manuel Guerrero, who maintains Bison's djgpp support.
[snip]
>> I'm thinking of putting off 2.4.2 about another week because of the recent
>> bug reports. I'd really like to be done with the 2.4 series at that point
>> if possible.
>
> Now I'm thinking I might roll a 2.4.1b to give at least the bug reporters
> a chance to try out the fixes. I think djgpp is also affected given that
> it has its own version of our old subpipe module. I know nothing about
> djgpp, so hopefully someone can take care of that as well during this
> delay.
Sorry, but I have not followed this mailing list for some time so I will assume
that you want to use gnulibs pipe.[ch] files to implement the required pipe
functionality for bison. That will be ok with me as long as the gnulib main-
tainers allows me to introduce some djgpp specific code to emulate the missing
pipe support on FreeDOS/MSDOS/djgpp.
An inspection of pipe.[ch] and w32span.h shows that they already have
implemented
pipe support for windows. The important issue here is that the code looks like
this:
static pid_t
create_pipe (const char *progname,
const char *prog_path, char **prog_argv,
bool pipe_stdin, bool pipe_stdout,
const char *prog_stdin, const char *prog_stdout,
bool null_stderr,
bool slave_process, bool exit_on_error,
int fd[2])
{
#if defined _MSC_VER || defined __MINGW32__
/*
* Here comes all the windows specific stuff.....
*/
#else
/*
* Here comes all the unixs specific stuff.....
*/
#endif
The windows specific functionality is hidden in w32span.h that is only included
if compiled on a windows platform with a windows compiler. That is an approach
that can be extended to support djgpp too. The code would then look like this:
static pid_t
create_pipe (const char *progname,
const char *prog_path, char **prog_argv,
bool pipe_stdin, bool pipe_stdout,
const char *prog_stdin, const char *prog_stdout,
bool null_stderr,
bool slave_process, bool exit_on_error,
int fd[2])
{
#if defined _MSC_VER || defined __MINGW32__
/*
* Here comes all the windows specific stuff.....
*/
#elif defined __DJGPP__
/*
* Here comes all the djgpp specific stuff.....
*/
#else
/*
* Here comes all the unix specific stuff.....
*/
#endif
The djgpp specific functionality would go into the new file djgpp-spawn.h and
would only be include when using djgpp. If my assumptions about your intention
are correct, then I think we can remove the old subpipe module and use
gnulib's pipe.[ch] instead.
I have downloaded gnulib's pipe.[ch] to start coding the djgpp specific issues
and to test them.
Regards,
Juan M. Guerrero
- Re: Test 52 failure on AIX, HP-UX, Solaris, Joel E. Denny, 2010/02/02
- Re: Test 52 failure on AIX, HP-UX, Solaris, Akim Demaille, 2010/02/03
- Re: Test 52 failure on AIX, HP-UX, Solaris, Joel E. Denny, 2010/02/03
- Re: Test 52 failure on AIX, HP-UX, Solaris, Joel E. Denny, 2010/02/04
- Re: Test 52 failure on AIX, HP-UX, Solaris, Joel E. Denny, 2010/02/04
- Re: Test 52 failure on AIX, HP-UX, Solaris,
Juan Manuel Guerrero <=
- Re: Test 52 failure on AIX, HP-UX, Solaris, Joel E. Denny, 2010/02/06
- Re: Test 52 failure on AIX, HP-UX, Solaris, Joel E. Denny, 2010/02/22