Bug#1066606: fteqcc: FTBFS: qccmain.c:3127:17: error: implicit declaration of function ‘PostCompile’ [-Werror=implicit-function-declaration]

Lucas Nussbaum lucas at debian.org
Wed Mar 13 11:50:20 GMT 2024


Source: fteqcc
Version: 3343+svn3400-4
Severity: serious
Justification: FTBFS
Tags: trixie sid ftbfs
User: lucas at 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 -Wall -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2  -c -o qcctui.o qcctui.c
> qcc_pr_lex.c: In function ‘ParsePrecompilerIf’:
> qcc_pr_lex.c:216:15: warning: unused variable ‘start’ [-Wunused-variable]
>   216 |         char *start = pr_file_p;
>       |               ^~~~~
> qcc_pr_lex.c: In function ‘QCC_PR_Precompiler’:
> qcc_pr_lex.c:810:20: warning: unused variable ‘currentsourcefile’ [-Wunused-variable]
>   810 |         extern int currentsourcefile;
>       |                    ^~~~~~~~~~~~~~~~~
> qccmain.c: In function ‘QCC_WriteData’:
> qccmain.c:1116:40: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
>  1116 |                 qcc_typeinfo[i].name = (char *)QCC_CopyDupBackString(qcc_typeinfo[i].name);
>       |                                        ^
> qcd_main.c: In function ‘filefromprogs’:
> qcd_main.c:163:58: warning: logical not is only applied to the left hand side of comparison [-Wlogical-not-parentheses]
>   163 |         if (!pr_progstate[prnum].progs->secondaryversion != PROG_SECONDARYVERSION16 &&
>       |                                                          ^~
> qcd_main.c:163:13: note: add parentheses around left hand side expression to silence this warning
>   163 |         if (!pr_progstate[prnum].progs->secondaryversion != PROG_SECONDARYVERSION16 &&
>       |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>       |             (                                           )
> qcd_main.c:164:62: warning: logical not is only applied to the left hand side of comparison [-Wlogical-not-parentheses]
>   164 |                 !pr_progstate[prnum].progs->secondaryversion != PROG_SECONDARYVERSION32)
>       |                                                              ^~
> qcd_main.c:164:17: note: add parentheses around left hand side expression to silence this warning
>   164 |                 !pr_progstate[prnum].progs->secondaryversion != PROG_SECONDARYVERSION32)
>       |                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>       |                 (                                           )
> qccmain.c: In function ‘QCC_main’:
> qccmain.c:2734:19: warning: assignment to ‘void * (*)(hashtable_t *, char *)’ {aka ‘void * (*)(struct hashtable_s *, char *)’} from incompatible pointer type ‘void * (*)(hashtable_t *, const char *)’ {aka ‘void * (*)(struct hashtable_s *, const char *)’} [-Wincompatible-pointer-types]
>  2734 |         pHash_Get = &Hash_Get;
>       |                   ^
> qccmain.c:2755:19: warning: pointer targets in assignment from ‘unsigned char *’ to ‘char *’ differ in signedness [-Wpointer-sign]
>  2755 |                 s = externs->ReadFile("qcc.cfg", s, p);
>       |                   ^
> qccmain.c:2936:27: warning: assignment to ‘void * (*)(hashtable_t *, char *)’ {aka ‘void * (*)(struct hashtable_s *, char *)’} from incompatible pointer type ‘void * (*)(hashtable_t *, const char *)’ {aka ‘void * (*)(struct hashtable_s *, const char *)’} [-Wincompatible-pointer-types]
>  2936 |                 pHash_Get = &Hash_GetInsensative;
>       |                           ^
> qcc_pr_comp.c: In function ‘QCC_PR_GenerateFunctionCall’:
> qccmain.c: In function ‘QCC_ContinueCompile’:
> qcc_pr_comp.c:2806:13: warning: variable ‘np’ set but not used [-Wunused-but-set-variable]
>  2806 |         int np;
>       |             ^~
> qccmain.c:3127:17: error: implicit declaration of function ‘PostCompile’ [-Werror=implicit-function-declaration]
>  3127 |                 PostCompile();
>       |                 ^~~~~~~~~~~
> qcc_pr_comp.c:2805:13: warning: variable ‘extraparms’ set but not used [-Wunused-but-set-variable]
>  2805 |         int extraparms=false;
>       |             ^~~~~~~~~~
> qccmain.c:3128:22: error: implicit declaration of function ‘PreCompile’; did you mean ‘Decompile’? [-Werror=implicit-function-declaration]
>  3128 |                 if (!PreCompile())
>       |                      ^~~~~~~~~~
>       |                      Decompile
> qcc_pr_comp.c: In function ‘QCC_PR_ParseFunctionCall’:
> qcc_pr_comp.c:3020:13: warning: variable ‘callconvention’ set but not used [-Wunused-but-set-variable]
>  3020 |         int callconvention;
>       |             ^~~~~~~~~~~~~~
> qcc_pr_comp.c:3018:13: warning: unused variable ‘laststatement’ [-Wunused-variable]
>  3018 |         int laststatement = numstatements;
>       |             ^~~~~~~~~~~~~
> qcc_pr_comp.c: In function ‘QCC_PR_Expression’:
> qcc_pr_comp.c:5030:33: warning: variable ‘type_b’ set but not used [-Wunused-but-set-variable]
>  5030 |         etype_t         type_a, type_b, type_c;
>       |                                 ^~~~~~
> qcc_pr_comp.c: In function ‘QCC_PR_ParseState’:
> qcc_pr_comp.c:6396:14: warning: variable ‘f’ set but not used [-Wunused-but-set-variable]
>  6396 |         char f;
>       |              ^
> qcc_pr_comp.c: In function ‘QCC_PR_GetDef’:
> qcc_pr_comp.c:8031:23: warning: comparison of distinct pointer types lacks a cast
>  8031 |         if (pHash_Get != &Hash_Get && !allocate)        //do we want to try case insensative too?
>       |                       ^~
> qcc_pr_comp.c: In function ‘QCC_PR_DummyFieldDef’:
> qcc_pr_comp.c:8196:25: warning: value computed is not used [-Wunused-value]
>  8196 |                         *fieldofs++;
>       |                         ^~~~~~~~~~~
> qcc_pr_comp.c: In function ‘QCC_PR_ExpandUnionToFields’:
> qcc_pr_comp.c:8290:53: warning: pointer targets in passing argument 5 of ‘QCC_PR_DummyFieldDef’ differ in signedness [-Wpointer-sign]
>  8290 |         QCC_PR_DummyFieldDef(pass, "", pr_scope, 1, fields, true);
>       |                                                     ^~~~~~
>       |                                                     |
>       |                                                     int *
> qcc_pr_comp.c:8153:110: note: expected ‘unsigned int *’ but argument is of type ‘int *’
>  8153 | QCC_def_t *QCC_PR_DummyFieldDef(QCC_type_t *type, char *name, QCC_def_t *scope, int arraysize, unsigned int *fieldofs, pbool saved)
>       |                                                                                                ~~~~~~~~~~~~~~^~~~~~~~
> qcc_pr_comp.c: In function ‘QCC_PR_ParseDefs’:
> qcc_pr_comp.c:9046:9: note: ‘#pragma message: this is experimental’
>  9046 | #pragma message("this is experimental")
>       |         ^~~~~~~
> qcc_pr_comp.c:9106:37: error: implicit declaration of function ‘QCC_PR_CheckImmediate’; did you mean ‘QCC_PR_ParseImmediate’? [-Werror=implicit-function-declaration]
>  9106 |                                 if (QCC_PR_CheckImmediate("0"))
>       |                                     ^~~~~~~~~~~~~~~~~~~~~
>       |                                     QCC_PR_ParseImmediate
> qcc_pr_comp.c:9493:96: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
>  9493 |                                                         if (Hash_GetKey(&floatconstdefstable, *(int*)&pr_immediate._float))
>       |                                                                                                ^~~~~~~~~~~~~~~~~~~~~~~~~~
> qcc_pr_lex.c:547:25: warning: ‘strncpy’ output may be truncated copying 1023 bytes from a string of length 1023 [-Wstringop-truncation]
>   547 |                         strncpy(QCC_copyright, msg, sizeof(QCC_copyright)-1);
>       |                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> cc1: some warnings being treated as errors
> make[2]: *** [Makefile:41: qccmain.o] Error 1


The full build log is available from:
http://qa-logs.debian.net/2024/03/13/fteqcc_3343+svn3400-4_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.



More information about the Pkg-games-devel mailing list