[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#351366: redundant ctermid declaration (causes FTBFS)



tag 351366 + wontfix
severity 351366 wishlist
thanks

> This causes FTBFS in packages with such (overstrict IMHO) CFLAGS.

  Yes, it's quite a bad idea to ship code with -Werror. Developping with
heavy-strong CFLAGS is good, shipping with them is always a bad idea as
gcc could evolve in a direction where it creates more warnings and cause
compilation problems with new gcc versions.

>   rmh@aragorn:/tmp$ cat test.c
>   #include <stdio.h>
>   #include <unistd.h>
>   rmh@aragorn:/tmp$ gcc -D_GNU_SOURCE -Werror -Wsystem-headers -Wredundant-decls -c test.c
>   cc1: warnings being treated as errors
>   In file included from test.c:2:
>   /usr/include/unistd.h:1040: warning: redundant redeclaration of 'ctermid'
>   /usr/include/stdio.h:779: warning: previous declaration of 'ctermid' was here

  technically, the reason is explained in unistd.h:

    /* The Single Unix specification demands this prototype to be here.
       It is also found in <stdio.h>.  */
    #ifdef __USE_XOPEN
    /* Return the name of the controlling terminal.  */
    extern char *ctermid (char *__s) __THROW;
    #endif


  So this won't be fixed as it's the intended way. Also note that there
is absolutely nothing wrong with redundant declarations in C as soon as
they are type-compatible. So it's quite a useless warning anyway.

Cheers,
-- 
·O·  Pierre Habouzit
··O                                                madcoder@debian.org
OOO                                                http://www.madism.org

Attachment: pgpafJn5ZBE6Z.pgp
Description: PGP signature


Reply to: