On Tue, 14 Sep 2004 16:03:36 +0200, Paul J Stevens <[EMAIL PROTECTED]> wrote:
> I don't get it. Why doesn't freebsd like this code?
>
> <code>
> void manage_stop_children()
> {
> /*
> *
> * cleanup all remaining forked processes
> *
> */
> trace(TRACE_MESSAGE, "%s,%s: General stop requested. Killing
> children.. ",
> __FILE__,__func__);
> int stillSomeAlive = 1;
> int i, cnt = 0;
> pid_t chpid;
> while (stillSomeAlive && cnt < 10) {
> stillSomeAlive = 0;
> cnt++;
> </code>
>
> It appears gcc on freebsd doesn't like 'int var=0' type declarations inside
> functions. Or am I missing something else here.
>
> Someone with access to freebsd please help me out here. Ilja?
I think it doesn't like the fact that the trace() call comes before
the variable declarations. If I compile with the '-pedantic' options,
I get the following message:
pool.c: In function `manage_stop_children':
pool.c:369: warning: ISO C89 forbids mixed declarations and code
If that's the problem, then the solution would be to put the trace()
call after all variable declarations.
BTW, I don't have a FreeBSD machine here, so I can't test it.
Ilja