• Bug#1066353: arj: FTBFS: arj.c:594:3: error: implicit declaration of fu

    From Lucas Nussbaum@21:1/5 to All on Wed Mar 13 13:00:12 2024
    Source: arj
    Version: 3.10.22-26
    Severity: serious
    Justification: FTBFS
    Tags: trixie sid ftbfs
    User: lucas@debian.org
    Usertags: ftbfs-20240313 ftbfs-trixie ftbfs-impfuncdef

    Hi,

    During a rebuild of all packages in sid, your package failed to build
    on amd64.

    This is most likely caused by a change in dpkg 1.22.6, that enabled -Werror=implicit-function-declaration. For more information, see https://wiki.debian.org/qa.debian.org/FTBFS#A2024-03-13_-Werror.3Dimplicit-function-declaration

    Relevant part (hopefully):
    gcc -DSFL=4 -c -Ilinux-gnu -I./linux-gnu/en/rs -I. -DLOCALE=LANG_en -DLOCALE_DESC="\"en\"" -DPKGLIBDIR="\"/usr/lib/x86_64-linux-gnu/arj\"" -D_UNIX -Wdate-time -D_FORTIFY_SOURCE=2 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -Werror=implicit-function-
    declaration -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wall -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-
    strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wall -olinux-gnu/en/rs/arj/arj_arcv.o arj_arcv.c
    encode.c: In function ‘huf_encode_m3’:
    encode.c:1218:30: warning: pointer targets in passing argument 1 of ‘fetch_uncomp’ differ in signedness [-Wpointer-sign]
    1218 | if((fetch=fetch_uncomp(tree+tree_el, fetch))==0)
    | ~~~~^~~~~~~~
    | |
    | unsigned char *
    encode.c:244:24: note: expected ‘char *’ but argument is of type ‘unsigned char *’
    244 | int fetch_uncomp(char *dest, int n)
    | ~~~~~~^~~~
    encode.c: In function ‘encode_f’:
    encode.c:1584:26: warning: pointer targets in passing argument 1 of ‘fetch_uncomp’ differ in signedness [-Wpointer-sign]
    1584 | if((fetch=fetch_uncomp(tree, fetch))==0)
    | ^~~~
    | |
    | unsigned char *
    encode.c:244:24: note: expected ‘char *’ but argument is of type ‘unsigned char *’
    244 | int fetch_uncomp(char *dest, int n)
    | ~~~~~~^~~~
    arj.c: In function ‘final_cleanup’:
    arj.c:594:3: error: implicit declaration of function ‘fcloseall’; did you mean ‘fclose’? [-Werror=implicit-function-declaration]
    594 | fcloseall();
    | ^~~~~~~~~
    | fclose
    arj.c: In function ‘main’:
    arj.c:830:39: warning: pointer targets in passing argument 1 of ‘reg_validation’ differ in signedness [-Wpointer-sign]
    830 | is_registered=reg_validation(regdata+REG_KEY1_SHIFT, regdata+REG_KEY2_SHIFT, regdata+REG_NAME_SHIFT, regdata+REG_HDR_SHIFT);
    In file included from arj.h:19,
    from arj.c:13:
    file_reg.h:11:26: note: expected ‘char *’ but argument is of type ‘unsigned char *’
    11 | int reg_validation(char *key1, char *key2, char *name, char *validation);
    | ~~~~~~^~~~
    arj.c:830:63: warning: pointer targets in passing argument 2 of ‘reg_validation’ differ in signedness [-Wpointer-sign]
    830 | is_registered=reg_validation(regdata+REG_KEY1_SHIFT, regdata+REG_KEY2_SHIFT, regdata+REG_NAME_SHIFT, regdata+REG_HDR_SHIFT);
    file_reg.h:11:38: note: expected ‘char *’ but argument is of type ‘unsigned char *’
    11 | int reg_validation(char *key1, char *key2, char *name, char *validation);
    | ~~~~~~^~~~
    arj.c:830:87: warning: pointer targets in passing argument 3 of ‘reg_validation’ differ in signedness [-Wpointer-sign]
    830 | is_registered=reg_validation(regdata+REG_KEY1_SHIFT, regdata+REG_KEY2_SHIFT, regdata+REG_NAME_SHIFT, regdata+REG_HDR_SHIFT);
    file_reg.h:11:50: note: expected ‘char *’ but argument is of type ‘unsigned char *’
    11 | int reg_validation(char *key1, char *key2, char *name, char *validation);
    | ~~~~~~^~~~
    arj.c:830:111: warning: pointer targets in passing argument 4 of ‘reg_validation’ differ in signedness [-Wpointer-sign]
    830 | is_registered=reg_validation(regdata+REG_KEY1_SHIFT, regdata+REG_KEY2_SHIFT, regdata+REG_NAME_SHIFT, regdata+REG_HDR_SHIFT);
    file_reg.h:11:62: note: expected ‘char *’ but argument is of type ‘unsigned char *’
    11 | int reg_validation(char *key1, char *key2, char *name, char *validation);
    | ~~~~~~^~~~~~~~~~
    gcc -DSFL=4 -c -Ilinux-gnu -I./linux-gnu/en/rs -I. -DLOCALE=LANG_en -DLOCALE_DESC="\"en\"" -DPKGLIBDIR="\"/usr/lib/x86_64-linux-gnu/arj\"" -D_UNIX -Wdate-time -D_FORTIFY_SOURCE=2 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -Werror=implicit-function-
    declaration -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wall -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-
    strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wall -olinux-gnu/en/rs/arj/arj_file.o arj_file.c
    arj.c:1254:64: warning: pointer targets in passing argument 4 of ‘reg_validation’ differ in signedness [-Wpointer-sign]
    1254 | if(!reg_validation(single_spc, single_spc, single_spc, regdata+REG_HDR_SHIFT))
    file_reg.h:11:62: note: expected ‘char *’ but argument is of type ‘unsigned char *’
    11 | int reg_validation(char *key1, char *key2, char *name, char *validation);
    | ~~~~~~^~~~~~~~~~
    arj.c:713:28: warning: variable ‘proc_time’ set but not used [-Wunused-but-set-variable]
    713 | unsigned long start_time, proc_time;
    | ^~~~~~~~~
    arj.c:713:16: warning: variable ‘start_time’ set but not used [-Wunused-but-set-variable]
    713 | unsigned long start_time, proc_time;
    | ^~~~~~~~~~
    In file included from arj.h:13:
    arj.c: In function ‘exec_cmd’:
    environ.h:936:26: warning: ignoring return value of ‘system’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
    936 | #define system_cmd(cmd) system(cmd)
    | ^~~~~~~~~~~
    arj.c:559:2: note: in expansion of macro ‘system_cmd’
    559 | system_cmd(cmd);
    | ^~~~~~~~~~
    arj.c: In function ‘final_cleanup’:
    arj.c:641:3: warning: ignoring return value of ‘freopen’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
    641 | freopen(dev_con, m_w, stdout);
    | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    fardata.c: In function ‘error_proc’:
    fardata.c:48:8: warning: unused variable ‘tmp_errmsg’ [-Wunused-variable]
    48 | char *tmp_errmsg;
    | ^~~~~~~~~~
    fardata.c: In function ‘vcprintf’:
    fardata.c:454:6: warning: unused variable ‘far_str’ [-Wunused-variable]
    454 | int far_str; /* Far string qualifier */
    | ^~~~~~~
    fardata.c: In function ‘error_proc’:
    fardata.c:61:4: warning: ignoring return value of ‘freopen’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
    61 | freopen(dev_con, m_w, stdout);
    | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    gcc -DSFL=4 -c -Ilinux-gnu -I./linux-gnu/en/rs -I. -DLOCALE=LANG_en -DLOCALE_DESC="\"en\"" -DPKGLIBDIR="\"/usr/lib/x86_64-linux-gnu/arj\"" -D_UNIX -Wdate-time -D_FORTIFY_SOURCE=2 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -Werror=implicit-function-
    declaration -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wall -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-
    strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wall -olinux-gnu/en/rs/arj/crc32.o crc32.c
    arj_arcv.c: In function ‘pack_file’:
    arj_arcv.c:1425:22: warning: unused variable ‘p_eh’ [-Wunused-variable]
    1425 | struct ext_hdr FAR *p_eh;
    | ^~~~
    arj_arcv.c:1413:6: warning: variable ‘lfn’ set but not used [-Wunused-but-set-variable]
    1413 | int lfn;
    | ^~~
    arj_file.c: In function ‘t_search_stub’:
    arj_file.c:1177:48: warning: pointer targets in passing argument 1 of ‘display_found_text’ differ in signedness [-Wpointer-sign]
    1177 | search_offset=t_offset+display_found_text(block, t_offset, block_len)-len;
    | ^~~~~
    | |
    | char * arj_file.c:1099:50: note: expected ‘unsigned char *’ but argument is of type ‘char *’
    1099 | static int display_found_text(unsigned char FAR *block, int offset, int block_len)
    | ~~~~~~~~~~~~~~~~~~~^~~~~
    arj_file.c: In function ‘search_in_block’:
    arj_file.c:1204:15: warning: pointer targets in passing argument 1 of ‘toupper_loc’ differ in signedness [-Wpointer-sign]
    1204 | toupper_loc(block, block_len);
    | ^~~~~
    | |
    | char *
    In file included from arj.h:13,
    from arj_file.c:9:
    environ.h:900:33: note: expected ‘unsigned char *’ but argument is of type ‘char *’
    900 | void toupper_loc(unsigned char *ptr, int length);
    | ~~~~~~~~~~~~~~~^~~
    arj_file.c:1209:16: warning: pointer targets in passing argument 1 of ‘toupper_loc’ differ in signedness [-Wpointer-sign]
    1209 | toupper_loc(search_reserve, reserve_size);
    | ^~~~~~~~~~~~~~
    | |
    | char *
    environ.h:900:33: note: expected ‘unsigned char *’ but argument is of type ‘char *’
    900 | void toupper_loc(unsigned char *ptr, int length);
    | ~~~~~~~~~~~~~~~^~~
    In file included from arj.h:13,
    from arj_arcv.c:9:
    arj_arcv.c: In function ‘arjdisp_scrn’:
    environ.h:936:26: warning: ignoring return value of ‘system’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
    936 | #define system_cmd(cmd) system(cmd)
    | ^~~~~~~~~~~
    arj_arcv.c:1124:4: note: in expansion of macro ‘system_cmd’
    1124 | system_cmd(misc_buf);
    | ^~~~~~~~~~
    gcc -DSFL=4 -c -Ilinux-gnu -I./linux-gnu/en/rs -I. -DLOCALE=LANG_en -DLOCALE_DESC="\"en\"" -DPKGLIBDIR="\"/usr/lib/x86_64-linux-gnu/arj\"" -D_UNIX -Wdate-time -D_FORTIFY_SOURCE=2 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -Werror=implicit-function-
    declaration -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wall -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-
    strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wall -olinux-gnu/en/rs/arj/misc.o misc.c
    misc.c: In function ‘strupper’:
    misc.c:480:15: warning: pointer targets in passing argument 1 of ‘toupper_loc’ differ in signedness [-Wpointer-sign]
    480 | toupper_loc(s, strlen(s));
    | ^
    | |
    | char *
    In file included from arj.h:13,
    from misc.c:9:
    environ.h:900:33: note: expected ‘unsigned char *’ but argument is of type ‘char *’
    900 | void toupper_loc(unsigned char *ptr, int length);
    | ~~~~~~~~~~~~~~~^~~
    misc.c: In function ‘flist_add’:
    misc.c:661:13: warning: unused variable ‘i’ [-Wunused-variable]
    661 | FILE_COUNT i;
    | ^
    misc.c: In function ‘cfa_get_index’:
    misc.c:809:22: warning: pointer targets in assignment from ‘char *’ to ‘unsigned char *’ differ in signedness [-Wpointer-sign]
    809 | flist_array[fblock]=(char FAR *)farmalloc_msg((CFA_BLOCK_SIZE+3)>>2);
    | ^
    misc.c: In function ‘cfa_store’:
    misc.c:859:4: warning: operation on ‘*p’ may be undefined [-Wsequence-point]
    859 | *p=(*p&=~bit_mask)|value_bits;
    | ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
    gcc -DSFL=4 -c -Ilinux-gnu -I./linux-gnu/en/rs -I. -DLOCALE=LANG_en -DLOCALE_DESC="\"en\"" -DPKGLIBDIR="\"/usr/lib/x86_64-linux-gnu/arj\"" -D_UNIX -Wdate-time -D_FORTIFY_SOURCE=2 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -Werror=implicit-function-
    declaration -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wall -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-
    strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wall -olinux-gnu/en/rs/arj/debug.o debug.c
    gcc -DSFL=4 -c -Ilinux-gnu -I./linux-gnu/en/rs -I. -DLOCALE=LANG_en -DLOCALE_DESC="\"en\"" -DPKGLIBDIR="\"/usr/lib/x86_64-linux-gnu/arj\"" -D_UNIX -Wdate-time -D_FORTIFY_SOURCE=2 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -Werror=implicit-function-
    declaration -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wall -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-
    strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wall -olinux-gnu/en/rs/arj/arj_proc.o arj_proc.c
    gcc -DSFL=4 -c -Ilinux-gnu -I./linux-gnu/en/rs -I. -DLOCALE=LANG_en -DLOCALE_DESC="\"en\"" -DPKGLIBDIR="\"/usr/lib/x86_64-linux-gnu/arj\"" -D_UNIX -Wdate-time -D_FORTIFY_SOURCE=2 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -Werror=implicit-function-
    declaration -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wall -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-
    strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wall -olinux-gnu/en/rs/arj/environ.o environ.c
    arj_proc.c: In function ‘stoul’:
    arj_proc.c:1155:3: warning: value computed is not used [-Wunused-value]
    1155 | *rp++;
    | ^~~~~
    arj_proc.c:1160:3: warning: value computed is not used [-Wunused-value]
    1160 | *rp++;
    | ^~~~~
    arj_proc.c:1165:3: warning: value computed is not used [-Wunused-value]
    1165 | *rp++;
    | ^~~~~
    arj_proc.c:1170:3: warning: value computed is not used [-Wunused-value]
    1170 | *rp++;
    | ^~~~~
    environ.c: In function ‘file_open’:
    environ.c:1954:7: warning: unused variable ‘shflag’ [-Wunused-variable]
    1954 | int shflag;
    | ^~~~~~
    environ.c: In function ‘file_find’:
    environ.c:2318:7: warning: unused variable ‘u’ [-Wunused-variable]
    2318 | int u;
    | ^
    arj_proc.c: In function ‘file_seek’:
    arj_proc.c:2499:4: warning: ignoring return value of ‘fread’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
    2499 | fread(buffer, 1, (int)offset, stream);
    | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    environ.c: At top level:
    environ.c:250:14: warning: ‘drive_c’ defined but not used [-Wunused-variable]
    250 | static char drive_c[]="C:"; /* Although it's incorrect... */
    | ^~~~~~~
    environ.c:244:14: warning: ‘attrib_buf’ defined but not used [-Wunused-variable]
    244 | static char attrib_buf[]="---W"; /* ASHR if all set */
    | ^~~~~~~~~~
    arj_file.c: In function ‘display_indicator’:
    arj_file.c:924:10: warning: ‘pct’ may be used uninitialized [-Wmaybe-uninitialized]
    924 | prev_pct=pct;
    | ~~~~~~~~^~~~
    arj_file.c:823:6: note: ‘pct’ was declared here
    823 | int pct;
    | ^~~
    gcc -DSFL=4 -c -Ilinux-gnu -I./linux-gnu/en/rs -I. -DLOCALE=LANG_en -DLOCALE_DESC="\"en\"" -DPKGLIBDIR="\"/usr/lib/x86_64-linux-gnu/arj\"" -D_UNIX -Wdate-time -D_FORTIFY_SOURCE=2 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -Werror=implicit-function-
    declaration -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wall -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-
    strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wall -olinux-gnu/en/rs/arj/ea_mgr.o ea_mgr.c
    cc1: some warnings being treated as errors
    make[3]: *** [GNUmakefile:150: linux-gnu/en/rs/arj/arj.o] Error 1


    The full build log is available from: http://qa-logs.debian.net/2024/03/13/arj_3.10.22-26_unstable.log

    All bugs filed during this archive rebuild are listed at: https://bugs.debian.org/cgi-bin/pkgreport.cgi?tag=ftbfs-20240313;users=lucas@debian.org
    or: https://udd.debian.org/bugs/?release=na&merged=ign&fnewerval=7&flastmodval=7&fusertag=only&fusertagtag=ftbfs-20240313&fusertaguser=lucas@debian.org&allbugs=1&cseverity=1&ctags=1&caffected=1#results

    A list of current common problems and possible solutions is available at http://wiki.debian.org/qa.debian.org/FTBFS . You're welcome to contribute!

    If you reassign this bug to another package, please mark it as 'affects'-ing this package. See https://www.debian.org/Bugs/server-control#affects

    If you fail to reproduce this, please provide a build log and diff it with mine so that we can identify if something relevant changed in the meantime.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Debian Bug Tracking System@21:1/5 to Lucas Nussbaum on Wed Mar 13 13:40:03 2024
    This is a multi-part message in MIME format...

    Your message dated Wed, 13 Mar 2024 13:28:35 +0100
    with message-id <ZfGb82D46wEK0DTG@thunder.hadrons.org>
    and subject line Re: Bug#1066353: arj: FTBFS: arj.c:594:3: error: implicit declaration of function ‘fcloseall’; did you mean ‘fclose’? [-Werror=implicit-function-declaration]
    has caused the Debian Bug report #1066353,
    regarding arj: FTBFS: arj.c:594:3: error: implicit declaration of function ‘fcloseall’; did you mean ‘fclose’? [-Werror=implicit-function-declaration]
    to be marked as done.

    This means that you claim that the problem has been dealt with.
    If this is not the case it is now your responsibility to reopen the
    Bug report if necessary, and/or fix the problem forthwith.

    (NB: If you are a system administrator and have no idea what this
    message is talking about, this may indicate a serious mail system misconfiguration somewhere. Please contact owner@bugs.debian.org
    immediately.)


    --
    1066353: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1066353
    Debian Bug Tracking System
    Contact owner@bugs.debian.org with problems

    Received: (at submit) by bugs.debian.org; 13 Mar 2024 11:49:42 +0000 X-Spam-Checker-Version: SpamAssassin 3.4.6-bugs.debian.org_2005_01_02
    (2021-04-09) on buxtehude.debian.org
    X-Spam-Level:
    X-Spam-Status: No, score=-106.1 required=4.0 tests=BAYES_00,DKIMWL_WL_HIGH,
    DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FOURLA,
    FROMDEVELOPER,SPF_HELO_NONE,SPF_NONE,T_SCC_BODY_TEXT_LINE,
    UNPARSEABLE_RELAY,USER_IN_DKIM_WELCOMELIST,USER_IN_DKIM_WHITELIST
    autolearn=ham autolearn_force=no
    version=3.4.6-bugs.debian.org_2005_01_02
    X-Spam-Bayes: score:0.0000 Tokens: new, 150; hammy, 150; neutral, 307; spammy,
    0. spammytokens:
    hammytokens:0.000-+--Hx-spam-relays-external:sk:stravin,
    0.000-+--H*RT:sk:stravin, 0.000-+--Hx-spam-relays-external:311,
    0.000-+--H*RT:108, 0.000-+--H*RT:311
    Return-path: <lucas@debian.org>
    Received: from stravinsky.debian.org ([2