Tru64 and 2.2 problems - __attribute__ in prot.h

Scott Adkins adkinss at
Thu Jul 24 14:07:29 EDT 2003

--On Wednesday, July 23, 2003 11:23 AM +0100 Christos Soulios 
<soulbros at> wrote:

>>  3) After that, it compiles for awhile and then stops on imap/protocol.c
>>     with the following error:
>>       cc: Error: ./../lib/prot.h, line 209: Missing ";". (nosemi)
>>       __attribute__ ((format (printf, 2, 3)));
>>     Looking in lib/prot.h, I see the following:
>>       extern int prot_printf(struct protstream *, const char *, ...)
>>           __attribute__ ((format (printf, 2, 3)));
>>     What is that supposed to do?  I simply deleted the line that has the
>>     __attribute__ on it and put a semicolon on the previous line and it
>>     compiles.  What problems will I see by doing that?
> __atribute__ keyword handling is done at the configure script and for
> compilers that do not support this extension there is a #define
> statement. However,  a '#include <config.h>' statement is missing from
> the lib/prot.h file and for this reason it does not build with other than
> gcc compilers. If you add it, then it is ok.

You are absolutely correct, and this indeed fixed the problem elegantly.
Rob, can you throw a #include <config.h> at the top of prot.h in CVS, or
do you need a patch given to you?

      Scott W. Adkins      
   UNIX Systems Engineer                  mailto:adkinss at
        ICQ 7626282                 Work (740)593-9478 Fax (740)593-1944
     PGP Public Key available at
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 231 bytes
Desc: not available
Url :

More information about the Info-cyrus mailing list