On Tue, 17 Apr 2001, David Wolfskill wrote:

> >Date: Tue, 17 Apr 2001 12:34:39 -0700 (PDT)
> >From: John Baldwin <[EMAIL PROTECTED]>
> >...
> >In file included from /usr/src/usr.sbin/pcvt/vttest/header.h:26,
> >                 from /usr/src/usr.sbin/pcvt/vttest/main.c:20:
> >/usr/obj/usr/src/i386/usr/include/stdio.h:302: syntax error before `char'
> >*** Error code 1
> >*** Error code 1
> >2 errors
> >...
> 
> Whacking src/include/stdio.h thus:
> 
> Index: include/stdio.h
> ===================================================================
> RCS file: /cvs/freebsd/src/include/stdio.h,v
> retrieving revision 1.32
> diff -u -u -r1.32 stdio.h
> --- include/stdio.h     2001/04/17 07:59:52    1.32
> +++ include/stdio.h     2001/04/17 17:54:57
> @@ -299,7 +299,7 @@
>  __BEGIN_DECLS
>  int   asprintf __P((char **, const char *, ...)) __printflike(2, 3);
>  char *ctermid_r __P((char *));
> -const char *fmtcheck __P((const char *, const char *))
> +__const char *fmtcheck __P((const char *, const char *))
>       __attribute__((__format_arg__(2)));
>  char *fgetLn __P((FILE *, size_t *));
>  int   fpurge __P((FILE *));
> 
> has allowed the "make buildworld" to succeed for me.  Building the
> kernel as I type; above was hand-transcribed (machine is not networked
> at the moment).  Use at your own risk; void where prohibited, etc....

This is because vttest is compiled with a K&Rish compiler (gcc
-traditional) for some reason, and the hard `const' doesn't work for
K&R compilers.  The `const's inside __P(()) don't cause problems
because they are soft -- __P(()) defines them away as part of defining
everything inside the inner parentheses away, although this is bogus
since prototypes work for `gcc -traditional'.

Bruce


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message

Reply via email to