On Tue, 28 Oct 2008 16:16:38 -0700
Paul Querna <[EMAIL PROTECTED]> wrote:

> Paul Querna wrote:
> > André Malo wrote:
> >> * Paul Querna wrote:
> >>
> >>> Ruediger Pluem wrote:
> >>
> >>>> This does not work on ANSI C compilers. Declarations need to be at the
> >>>> start of the block.
> >>> Then lets not support them.
> >>>
> >>> C90 required that variable decls came before code, but IIRC C99 style
> >>> mid-function declarations should work on pretty much all modern
> >>> platforms, aka anything with GCC or MSVC.
> >>
> >> -1.
> >> "IIRC" and "pretty much all modern" are both bad reasons for being 
> >> sloppy ;-)
> >>
> >> IIRC ( >:-> ) the AIX compiler actually doesn't like it, but other 
> >> people know that better.
> > 
> > Then lets not support AIX :-)
> 
> To expand on my beliefs around this a little bit, if a platform doesn't 
> have things like kqueue, epool or event ports, and it still doesn't have 
> a c99 compiler, where is the value in supporting it, they are likely 
> still using Apache 1.3 anyways.
> 
> -Paul
> 

VC++2005 doesn't support mid-function declarations as a C compiler.
Maybe VC++2008 doesn't either.
With a file name extension ".c", 

#include <stdio.h>
int main(){
        puts("");
        int a = 0;
        return 0;
}

does not compile with error C2143.

Reply via email to