Your message dated Sun, 24 Mar 2024 17:09:25 +0000
with message-id <e1rorlz-0098kv...@fasolo.debian.org>
and subject line Bug#1066324: fixed in lucy 1.20-4
has caused the Debian Bug report #1066324,
regarding lucy: FTBFS: poly.c:22:9: error: implicit declaration of function 
‘abi_code’ [-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 ow...@bugs.debian.org
immediately.)


-- 
1066324: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1066324
Debian Bug Tracking System
Contact ow...@bugs.debian.org with problems
--- Begin Message ---
Source: lucy
Version: 1.20-3
Severity: serious
Justification: FTBFS
Tags: trixie sid ftbfs
User: lu...@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):
> cc -g -O2 -Werror=implicit-function-declaration 
> -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong 
> -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection 
> -Wall -pedantic -Wdate-time -D_FORTIFY_SOURCE=2  -c -o poly.o poly.c
> done!
> qual_trim.c:10:1: warning: "/*" within comment [-Wcomment]
>    10 | /* qual_trim.c - Quality trimming algorithm which determines a "clean"
>       |  
> qual_trim.c:11:1: warning: "/*" within comment [-Wcomment]
>    11 | /*    range for a sequence based on its phred quality values.
>       |  
> qual_trim.c:12:1: warning: "/*" within comment [-Wcomment]
>    12 | /*
>       |  
> qual_trim.c:13:1: warning: "/*" within comment [-Wcomment]
>    13 | /* Written by Michael Holmes, 4/13/99.
>       |  
> qual_trim.c:14:1: warning: "/*" within comment [-Wcomment]
>    14 | /*
>       |  
> qual_trim.c:15:1: warning: "/*" within comment [-Wcomment]
>    15 | /* 1/31/2000, Michael Holmes -- Added default_windows().
>       |  
> qual_trim.c:16:1: warning: "/*" within comment [-Wcomment]
>    16 | /* 2/15/2000, Michael Holmes -- Added bracket_clean_range() and
>       |  
> qual_trim.c:17:1: warning: "/*" within comment [-Wcomment]
>    17 | /*    set_bracket().
>       |  
> qual_trim.c:18:1: warning: "/*" within comment [-Wcomment]
>    18 | /* 2/18/2000, Michael Holmes -- Minor change to test-mode output only.
>       |  
> qual_trim.c:19:1: warning: "/*" within comment [-Wcomment]
>    19 | /*
>       |  
> qual_trim.c:20:1: warning: "/*" within comment [-Wcomment]
>    20 | /* Copyright (C) 1999, 2000, The Institute for Genomic Research.  All 
> rights
>       |  
> qual_trim.c:21:1: warning: "/*" within comment [-Wcomment]
>    21 | /* reserved.
>       |  
> qual_trim.c:22:1: warning: "/*" within comment [-Wcomment]
>    22 | /*
>       |  
> qual_trim.c:23:1: warning: "/*" within comment [-Wcomment]
>    23 | /* Note: phred quality values are based on the log (base 10) of the
>       |  
> qual_trim.c:24:1: warning: "/*" within comment [-Wcomment]
>    24 | /* probability that the corresponding base call is in error:
>       |  
> qual_trim.c:25:1: warning: "/*" within comment [-Wcomment]
>    25 | /*
>       |  
> qual_trim.c:26:1: warning: "/*" within comment [-Wcomment]
>    26 | /*    Q = -10 log(P_error)
>       |  
> qual_trim.c:27:1: warning: "/*" within comment [-Wcomment]
>    27 | /*
>       |  
> qual_trim.c:28:1: warning: "/*" within comment [-Wcomment]
>    28 | /* Thanks to Granger Sutton for valuable suggestions.
>       |  
> qual_trim.c:29:1: warning: "/*" within comment [-Wcomment]
>    29 | /*
>       |  
> qual_trim.c:30:1: warning: "/*" within comment [-Wcomment]
>    30 | /* The main functions of interest to external code (such as lucy) are
>       |  
> qual_trim.c:31:1: warning: "/*" within comment [-Wcomment]
>    31 | /* default_windows() and quality_trim().  The grim() function 
> emulates the
>       |  
> qual_trim.c:32:1: warning: "/*" within comment [-Wcomment]
>    32 | /* interface that was used by the old quality trimmimg algorithm 
> (grim),
>       |  
> qual_trim.c:33:1: warning: "/*" within comment [-Wcomment]
>    33 | /* but it is not called by lucy.  The main() function is compiled 
> only if
>       |  
> qual_trim.c:34:1: warning: "/*" within comment [-Wcomment]
>    34 | /* TEST_THIS_CODE is #defined.
>       |  
> qual_trim.c:35:1: warning: "/*" within comment [-Wcomment]
>    35 | /*
>       |  
> qual_trim.c:36:1: warning: "/*" within comment [-Wcomment]
>    36 | /* The calling hierarchy is:
>       |  
> qual_trim.c:37:1: warning: "/*" within comment [-Wcomment]
>    37 | /*
>       |  
> qual_trim.c:38:1: warning: "/*" within comment [-Wcomment]
>    38 | /* main()
>       |  
> qual_trim.c:39:1: warning: "/*" within comment [-Wcomment]
>    39 | /*     grim()
>       |  
> qual_trim.c:40:1: warning: "/*" within comment [-Wcomment]
>    40 | /*         default_windows()
>       |  
> qual_trim.c:41:1: warning: "/*" within comment [-Wcomment]
>    41 | /*         quality_trim()
>       |  
> qual_trim.c:42:1: warning: "/*" within comment [-Wcomment]
>    42 | /*             bracket_clean_range()
>       |  
> qual_trim.c:43:1: warning: "/*" within comment [-Wcomment]
>    43 | /*             multi_window_trim()
>       |  
> qual_trim.c:44:1: warning: "/*" within comment [-Wcomment]
>    44 | /*                 window_trim()
>       |  
> qual_trim.c:45:1: warning: "/*" within comment [-Wcomment]
>    45 | /*                 multi_window_trim()    [recursive call]
>       |  
> qual_trim.c:46:1: warning: "/*" within comment [-Wcomment]
>    46 | /*                 average_error_trim()
>       |  
> qual_trim.c:47:1: warning: "/*" within comment [-Wcomment]
>    47 | /*
>       |  
> qual_trim.c:48:1: warning: "/*" within comment [-Wcomment]
>    48 | 
> /**************************************************************************/
>       |  
> poly.c: In function ‘poly_at_left’:
> poly.c:22:9: error: implicit declaration of function ‘abi_code’ 
> [-Werror=implicit-function-declaration]
>    22 |     if (abi_code(*seq)==T) {
>       |         ^~~~~~~~
> abi.c:24:8: warning: type defaults to ‘int’ in declaration of ‘condition’ 
> [-Wimplicit-int]
>    24 | static condition[]={
>       |        ^~~~~~~~~
> abi.c: In function ‘abi_code’:
> abi.c:70:15: error: implicit declaration of function ‘random’ 
> [-Werror=implicit-function-declaration]
>    70 |   case 5: tmp=random()%2 ? 2 : 0; break;
>       |               ^~~~~~
> splice.c: In function ‘splice_align_left’:
> splice.c:53:12: warning: type defaults to ‘int’ in declaration of ‘left’ 
> [-Wimplicit-int]
>    53 |   register left, top, direc, score, i, j;
>       |            ^~~~
> splice.c:53:18: warning: type defaults to ‘int’ in declaration of ‘top’ 
> [-Wimplicit-int]
>    53 |   register left, top, direc, score, i, j;
>       |                  ^~~
> splice.c:53:23: warning: type defaults to ‘int’ in declaration of ‘direc’ 
> [-Wimplicit-int]
>    53 |   register left, top, direc, score, i, j;
>       |                       ^~~~~
> splice.c:53:30: warning: type defaults to ‘int’ in declaration of ‘score’ 
> [-Wimplicit-int]
>    53 |   register left, top, direc, score, i, j;
>       |                              ^~~~~
> splice.c:53:37: warning: type defaults to ‘int’ in declaration of ‘i’ 
> [-Wimplicit-int]
>    53 |   register left, top, direc, score, i, j;
>       |                                     ^
> abi.c:82:5: error: implicit declaration of function ‘giveup’ 
> [-Werror=implicit-function-declaration]
>    82 |     giveup("how can other cases happen in tag_code?");
>       |     ^~~~~~
> splice.c:53:40: warning: type defaults to ‘int’ in declaration of ‘j’ 
> [-Wimplicit-int]
>    53 |   register left, top, direc, score, i, j;
>       |                                        ^
> splice.c:68:32: warning: array subscript has type ‘char’ [-Wchar-subscripts]
>    68 |     Score(0,0)=max_score=match[*a][*b];
>       |                                ^~
> splice.c:68:36: warning: array subscript has type ‘char’ [-Wchar-subscripts]
>    68 |     Score(0,0)=max_score=match[*a][*b];
>       |                                    ^~
> splice.c:75:20: warning: array subscript has type ‘char’ [-Wchar-subscripts]
>    75 |       score=match[a[i]][*b];
>       |                   ~^~~
> splice.c:75:25: warning: array subscript has type ‘char’ [-Wchar-subscripts]
>    75 |       score=match[a[i]][*b];
>       |                         ^~
> splice.c:16:38: warning: array subscript has type ‘char’ [-Wchar-subscripts]
>    16 | #define Direc(x, y) splice_direc_base[(y)*width+(x)]
>       |                     ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
> splice.c:76:38: note: in expansion of macro ‘Direc’
>    76 |       left=Score(i-1,0)+left_penalty[Direc(i-1,0)];
>       |                                      ^~~~~
> splice.c:90:19: warning: array subscript has type ‘char’ [-Wchar-subscripts]
>    90 |       score=match[*a][b[j]];
>       |                   ^~
> splice.c:90:24: warning: array subscript has type ‘char’ [-Wchar-subscripts]
>    90 |       score=match[*a][b[j]];
>       |                       ~^~~
> splice.c:16:38: warning: array subscript has type ‘char’ [-Wchar-subscripts]
>    16 | #define Direc(x, y) splice_direc_base[(y)*width+(x)]
>       |                     ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
> splice.c:91:36: note: in expansion of macro ‘Direc’
>    91 |       top=Score(0,j-1)+top_penalty[Direc(0,j-1)];
>       |                                    ^~~~~
> splice.c:107:25: warning: array subscript has type ‘char’ [-Wchar-subscripts]
>   107 |           score+=match[a[i]][b[j]];
>       |                        ~^~~
> splice.c:107:31: warning: array subscript has type ‘char’ [-Wchar-subscripts]
>   107 |           score+=match[a[i]][b[j]];
>       |                              ~^~~
> splice.c:110:24: warning: array subscript has type ‘char’ [-Wchar-subscripts]
>   110 |           score=match[a[i]][b[j]];
>       |                       ~^~~
> splice.c:110:30: warning: array subscript has type ‘char’ [-Wchar-subscripts]
>   110 |           score=match[a[i]][b[j]];
>       |                             ~^~~
> abi.c: In function ‘abi_align’:
> splice.c:16:38: warning: array subscript has type ‘char’ [-Wchar-subscripts]
>    16 | #define Direc(x, y) splice_direc_base[(y)*width+(x)]
>       |                     ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
> splice.c:113:38: note: in expansion of macro ‘Direc’
>   113 |         top=Score(i,j-1)+top_penalty[Direc(i,j-1)];
>       |                                      ^~~~~
> abi.c:195:18: warning: array subscript has type ‘char’ [-Wchar-subscripts]
>   195 |     if (badness[a[i]][b[j]]) {
>       |                 ~^~~
> splice.c:16:38: warning: array subscript has type ‘char’ [-Wchar-subscripts]
>    16 | #define Direc(x, y) splice_direc_base[(y)*width+(x)]
>       |                     ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
> splice.c:114:40: note: in expansion of macro ‘Direc’
>   114 |         left=Score(i-1,j)+left_penalty[Direc(i-1,j)];
>       |                                        ^~~~~
> abi.c:195:24: warning: array subscript has type ‘char’ [-Wchar-subscripts]
>   195 |     if (badness[a[i]][b[j]]) {
>       |                       ~^~~
> splice.c:139:12: warning: suggest parentheses around assignment used as truth 
> value [-Wparentheses]
>   139 |     while (direc=Direc(i,j))
>       |            ^~~~~
> abi.c:221:18: warning: array subscript has type ‘char’ [-Wchar-subscripts]
>   221 |     if (badness[a[i]][b[j]]) {
>       |                 ~^~~
> abi.c:221:24: warning: array subscript has type ‘char’ [-Wchar-subscripts]
>   221 |     if (badness[a[i]][b[j]]) {
>       |                       ~^~~
> splice.c: In function ‘splice_align_right’:
> splice.c:176:12: warning: type defaults to ‘int’ in declaration of ‘left’ 
> [-Wimplicit-int]
>   176 |   register left, top, direc, score, i, j;
>       |            ^~~~
> abi.c:226:46: warning: array subscript has type ‘char’ [-Wchar-subscripts]
>   226 |              l<width && r<height && badness[a[l]][b[r]]==0
>       |                                             ~^~~
> splice.c:176:18: warning: type defaults to ‘int’ in declaration of ‘top’ 
> [-Wimplicit-int]
>   176 |   register left, top, direc, score, i, j;
>       |                  ^~~
> splice.c:176:23: warning: type defaults to ‘int’ in declaration of ‘direc’ 
> [-Wimplicit-int]
>   176 |   register left, top, direc, score, i, j;
>       |                       ^~~~~
> abi.c:226:52: warning: array subscript has type ‘char’ [-Wchar-subscripts]
>   226 |              l<width && r<height && badness[a[l]][b[r]]==0
>       |                                                   ~^~~
> splice.c:176:30: warning: type defaults to ‘int’ in declaration of ‘score’ 
> [-Wimplicit-int]
>   176 |   register left, top, direc, score, i, j;
>       |                              ^~~~~
> splice.c:176:37: warning: type defaults to ‘int’ in declaration of ‘i’ 
> [-Wimplicit-int]
>   176 |   register left, top, direc, score, i, j;
>       |                                     ^
> splice.c:176:40: warning: type defaults to ‘int’ in declaration of ‘j’ 
> [-Wimplicit-int]
>   176 |   register left, top, direc, score, i, j;
>       |                                        ^
> abi.c:233:30: warning: array subscript has type ‘char’ [-Wchar-subscripts]
>   233 |         if ((count+=badness[a[l]][b[r]])<VERYBAD) {
>       |                             ~^~~
> splice.c:189:30: warning: array subscript has type ‘char’ [-Wchar-subscripts]
>   189 |   Score(0,0)=max_score=match[*a][*b];
>       |                              ^~
> abi.c:233:36: warning: array subscript has type ‘char’ [-Wchar-subscripts]
>   233 |         if ((count+=badness[a[l]][b[r]])<VERYBAD) {
>       |                                   ~^~~
> splice.c:189:34: warning: array subscript has type ‘char’ [-Wchar-subscripts]
>   189 |   Score(0,0)=max_score=match[*a][*b];
>       |                                  ^~
> splice.c:196:18: warning: array subscript has type ‘char’ [-Wchar-subscripts]
>   196 |     score=match[a[i]][*b];
>       |                 ~^~~
> vector.c: In function ‘construct_vector_tags’:
> splice.c:196:23: warning: array subscript has type ‘char’ [-Wchar-subscripts]
>   196 |     score=match[a[i]][*b];
>       |                       ^~
> vector.c:85:34: warning: array subscript has type ‘char’ [-Wchar-subscripts]
>    85 |       accr|=tag_code(rev_code[seq[len-k%len-1]]);
>       |                               ~~~^~~~~~~~~~~~~
> splice.c:16:38: warning: array subscript has type ‘char’ [-Wchar-subscripts]
>    16 | #define Direc(x, y) splice_direc_base[(y)*width+(x)]
>       |                     ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
> splice.c:197:36: note: in expansion of macro ‘Direc’
>   197 |     left=Score(i-1,0)+left_penalty[Direc(i-1,0)];
>       |                                    ^~~~~
> abi.c:245:46: warning: array subscript has type ‘char’ [-Wchar-subscripts]
>   245 |              l<width && r<height && badness[a[l]][b[r]]==0
>       |                                             ~^~~
> abi.c:245:52: warning: array subscript has type ‘char’ [-Wchar-subscripts]
>   245 |              l<width && r<height && badness[a[l]][b[r]]==0
>       |                                                   ~^~~
> splice.c:211:17: warning: array subscript has type ‘char’ [-Wchar-subscripts]
>   211 |     score=match[*a][b[j]];
>       |                 ^~
> splice.c:211:22: warning: array subscript has type ‘char’ [-Wchar-subscripts]
>   211 |     score=match[*a][b[j]];
>       |                     ~^~~
> abi.c:252:30: warning: array subscript has type ‘char’ [-Wchar-subscripts]
>   252 |         if ((count+=badness[a[l]][b[r]])<VERYBAD) {
>       |                             ~^~~
> splice.c:16:38: warning: array subscript has type ‘char’ [-Wchar-subscripts]
>    16 | #define Direc(x, y) splice_direc_base[(y)*width+(x)]
>       |                     ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
> splice.c:212:34: note: in expansion of macro ‘Direc’
>   212 |     top=Score(0,j-1)+top_penalty[Direc(0,j-1)];
>       |                                  ^~~~~
> abi.c:252:36: warning: array subscript has type ‘char’ [-Wchar-subscripts]
>   252 |         if ((count+=badness[a[l]][b[r]])<VERYBAD) {
>       |                                   ~^~~
> splice.c:228:23: warning: array subscript has type ‘char’ [-Wchar-subscripts]
>   228 |         score+=match[a[i]][b[j]];
>       |                      ~^~~
> splice.c:228:29: warning: array subscript has type ‘char’ [-Wchar-subscripts]
>   228 |         score+=match[a[i]][b[j]];
>       |                            ~^~~
> splice.c:231:22: warning: array subscript has type ‘char’ [-Wchar-subscripts]
>   231 |         score=match[a[i]][b[j]];
>       |                     ~^~~
> abi.c:266:46: warning: array subscript has type ‘char’ [-Wchar-subscripts]
>   266 |              l<width && r<height && badness[a[l]][b[r]]==0
>       |                                             ~^~~
> splice.c:231:28: warning: array subscript has type ‘char’ [-Wchar-subscripts]
>   231 |         score=match[a[i]][b[j]];
>       |                           ~^~~
> abi.c:266:52: warning: array subscript has type ‘char’ [-Wchar-subscripts]
>   266 |              l<width && r<height && badness[a[l]][b[r]]==0
>       |                                                   ~^~~
> splice.c:16:38: warning: array subscript has type ‘char’ [-Wchar-subscripts]
>    16 | #define Direc(x, y) splice_direc_base[(y)*width+(x)]
>       |                     ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
> splice.c:234:36: note: in expansion of macro ‘Direc’
>   234 |       top=Score(i,j-1)+top_penalty[Direc(i,j-1)];
>       |                                    ^~~~~
> splice.c:16:38: warning: array subscript has type ‘char’ [-Wchar-subscripts]
>    16 | #define Direc(x, y) splice_direc_base[(y)*width+(x)]
>       |                     ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
> splice.c:235:38: note: in expansion of macro ‘Direc’
>   235 |       left=Score(i-1,j)+left_penalty[Direc(i-1,j)];
>       |                                      ^~~~~
> abi.c:273:30: warning: array subscript has type ‘char’ [-Wchar-subscripts]
>   273 |         if ((count+=badness[a[l]][b[r]])<VERYBAD) {
>       |                             ~^~~
> abi.c:273:36: warning: array subscript has type ‘char’ [-Wchar-subscripts]
>   273 |         if ((count+=badness[a[l]][b[r]])<VERYBAD) {
>       |                                   ~^~~
> splice.c:260:10: warning: suggest parentheses around assignment used as truth 
> value [-Wparentheses]
>   260 |   while (direc=Direc(i,j))
>       |          ^~~~~
> splice.c:276:15: warning: suggest parentheses around ‘&&’ within ‘||’ 
> [-Wparentheses]
>   276 |   if (j>=span && j>=width-max_i || j>height/2)
>       |       ~~~~~~~~^~~~~~~~~~~~~~~~~
> abi.c:289:18: warning: array subscript has type ‘char’ [-Wchar-subscripts]
>   289 |     if (badness[a[i]][b[j]]) {
>       |                 ~^~~
> abi.c:289:24: warning: array subscript has type ‘char’ [-Wchar-subscripts]
>   289 |     if (badness[a[i]][b[j]]) {
>       |                       ~^~~
> abi.c:294:39: warning: array subscript has type ‘char’ [-Wchar-subscripts]
>   294 |              l>=0 && r>=0 && badness[a[l]][b[r]]==0
>       |                                      ~^~~
> abi.c:294:45: warning: array subscript has type ‘char’ [-Wchar-subscripts]
>   294 |              l>=0 && r>=0 && badness[a[l]][b[r]]==0
>       |                                            ~^~~
> abi.c:301:30: warning: array subscript has type ‘char’ [-Wchar-subscripts]
>   301 |         if ((count+=badness[a[l]][b[r]])<VERYBAD) {
>       |                             ~^~~
> abi.c:301:36: warning: array subscript has type ‘char’ [-Wchar-subscripts]
>   301 |         if ((count+=badness[a[l]][b[r]])<VERYBAD) {
>       |                                   ~^~~
> abi.c:313:39: warning: array subscript has type ‘char’ [-Wchar-subscripts]
>   313 |              l>=0 && r>=0 && badness[a[l]][b[r]]==0
>       |                                      ~^~~
> abi.c:313:45: warning: array subscript has type ‘char’ [-Wchar-subscripts]
>   313 |              l>=0 && r>=0 && badness[a[l]][b[r]]==0
>       |                                            ~^~~
> abi.c:320:30: warning: array subscript has type ‘char’ [-Wchar-subscripts]
>   320 |         if ((count+=badness[a[l]][b[r]])<VERYBAD) {
>       |                             ~^~~
> abi.c:320:36: warning: array subscript has type ‘char’ [-Wchar-subscripts]
>   320 |         if ((count+=badness[a[l]][b[r]])<VERYBAD) {
>       |                                   ~^~~
> abi.c:334:39: warning: array subscript has type ‘char’ [-Wchar-subscripts]
>   334 |              l>=0 && r>=0 && badness[a[l]][b[r]]==0
>       |                                      ~^~~
> abi.c:334:45: warning: array subscript has type ‘char’ [-Wchar-subscripts]
>   334 |              l>=0 && r>=0 && badness[a[l]][b[r]]==0
>       |                                            ~^~~
> abi.c:341:30: warning: array subscript has type ‘char’ [-Wchar-subscripts]
>   341 |         if ((count+=badness[a[l]][b[r]])<VERYBAD) {
>       |                             ~^~~
> abi.c:341:36: warning: array subscript has type ‘char’ [-Wchar-subscripts]
>   341 |         if ((count+=badness[a[l]][b[r]])<VERYBAD) {
>       |                                   ~^~~
> vector.c: In function ‘tag_code’:
> vector.c:44:10: warning: ‘tmp’ may be used uninitialized 
> [-Wmaybe-uninitialized]
>    44 |   return tmp;
>       |          ^~~
> vector.c:22:16: note: ‘tmp’ was declared here
>    22 |   register int tmp;
>       |                ^~~
> lucy.c: In function ‘hashstring’:
> lucy.c:111:9: warning: suggest parentheses around assignment used as truth 
> value [-Wparentheses]
>   111 |     if (g = value&0xF0000000) {
>       |         ^
> lucy.c: In function ‘worker’:
> lucy.c:172:10: warning: cast from pointer to integer of different size 
> [-Wpointer-to-int-cast]
>   172 |   int id=(int)arg;
>       |          ^
> lucy.c: In function ‘work_splice’:
> lucy.c:206:5: error: implicit declaration of function ‘splice_align_left’ 
> [-Werror=implicit-function-declaration]
>   206 |     splice_align_left(id, target_seq[id],
>       |     ^~~~~~~~~~~~~~~~~
> qual_trim.c:214:1: warning: "/*" within comment [-Wcomment]
>   214 | /* Determines some number of candidate clean ranges using a particular
>       |  
> qual_trim.c:215:1: warning: "/*" within comment [-Wcomment]
>   215 | /* window size.
>       |  
> qual_trim.c:216:1: warning: "/*" within comment [-Wcomment]
>   216 | /*
>       |  
> qual_trim.c:217:1: warning: "/*" within comment [-Wcomment]
>   217 | /* Globals used:
>       |  
> qual_trim.c:218:1: warning: "/*" within comment [-Wcomment]
>   218 | /*      double end_limit,       (maximum allowed probability of error 
> for bases)
>       |  
> qual_trim.c:219:1: warning: "/*" within comment [-Wcomment]
>   219 | /*                              (  at each end of clean range)
>       |  
> qual_trim.c:220:1: warning: "/*" within comment [-Wcomment]
>   220 | /*
>       |  
> qual_trim.c:332:1: warning: "/*" within comment [-Wcomment]
>   332 | /* Finds the largest subsequence of a sequence whose average 
> probability
>       |  
> qual_trim.c:333:1: warning: "/*" within comment [-Wcomment]
>   333 | /* of error does not exceed a specified maximum.
>       |  
> qual_trim.c:334:1: warning: "/*" within comment [-Wcomment]
>   334 | /*
>       |  
> qual_trim.c:335:1: warning: "/*" within comment [-Wcomment]
>   335 | /* Globals used:
>       |  
> qual_trim.c:336:1: warning: "/*" within comment [-Wcomment]
>   336 | /*      double max_avg_error,   (maximum allowed average probability 
> of error)
>       |  
> qual_trim.c:337:1: warning: "/*" within comment [-Wcomment]
>   337 | /*      double end_limit,       (maximum allowed probability of error 
> for bases)
>       |  
> lucy.c:247:7: error: implicit declaration of function ‘splice_align_right’ 
> [-Werror=implicit-function-declaration]
>   247 |       splice_align_right(id, target_seq[id]+seqs[i].left,
>       |       ^~~~~~~~~~~~~~~~~~
> qual_trim.c:338:1: warning: "/*" within comment [-Wcomment]
>   338 | /*                              (  at each end of clean range)
>       |  
> qual_trim.c:339:1: warning: "/*" within comment [-Wcomment]
>   339 | /*
>       |  
> lucy.c: At top level:
> lucy.c:284:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
>   284 | main (argc, argv)
>       | ^~~~
> qual_trim.c:434:1: warning: "/*" within comment [-Wcomment]
>   434 | /* Determines a single clean range, after recursively considering all 
> of
>       |  
> qual_trim.c:435:1: warning: "/*" within comment [-Wcomment]
>   435 | /* the specified window sizes.  Calls average_error_trim to trim the
>       |  
> qual_trim.c:436:1: warning: "/*" within comment [-Wcomment]
>   436 | /* results of the final window based on overall average probability of
>       |  
> qual_trim.c:437:1: warning: "/*" within comment [-Wcomment]
>   437 | /* error.
>       |  
> qual_trim.c:438:1: warning: "/*" within comment [-Wcomment]
>   438 | /*
>       |  
> qual_trim.c:439:1: warning: "/*" within comment [-Wcomment]
>   439 | /* Globals used:
>       |  
> qual_trim.c:440:1: warning: "/*" within comment [-Wcomment]
>   440 | /*      double max_avg_error,   (maximum allowed average probability 
> of error)
>       |  
> qual_trim.c:441:1: warning: "/*" within comment [-Wcomment]
>   441 | /*      double end_limit,       (maximum allowed probability of error 
> for bases)
>       |  
> qual_trim.c:442:1: warning: "/*" within comment [-Wcomment]
>   442 | /*                              (  at each end of clean range)
>       |  
> qual_trim.c:443:1: warning: "/*" within comment [-Wcomment]
>   443 | /*
>       |  
> lucy.c: In function ‘main’:
> qual_trim.c:569:1: warning: "/*" within comment [-Wcomment]
>   569 | /* Sets the window size and average probability of error allowed for 
> the
>       |  
> lucy.c:361:9: error: implicit declaration of function ‘set_bracket’ 
> [-Werror=implicit-function-declaration]
>   361 |         set_bracket(bracket_size, bracket_err);
>       |         ^~~~~~~~~~~
> qual_trim.c:570:1: warning: "/*" within comment [-Wcomment]
>   570 | /* terminal windows that "bracket" the candidate clean range.
>       |  
> qual_trim.c:571:1: warning: "/*" within comment [-Wcomment]
>   571 | /*
>       |  
> qual_trim.c:572:1: warning: "/*" within comment [-Wcomment]
>   572 | /* Globals used:
>       |  
> qual_trim.c:573:1: warning: "/*" within comment [-Wcomment]
>   573 | /*      int bracket_window,     (size of terminal window)
>       |  
> qual_trim.c:574:1: warning: "/*" within comment [-Wcomment]
>   574 | /*      double bracket_error    (allowable average prob. error in 
> window)
>       |  
> qual_trim.c:575:1: warning: "/*" within comment [-Wcomment]
>   575 | /*
>       |  
> qual_trim.c:587:1: warning: "/*" within comment [-Wcomment]
>   587 | /* Finds the leftmost window, and the rightmost window, which meet the
>       |  
> qual_trim.c:588:1: warning: "/*" within comment [-Wcomment]
>   588 | /* specified error criterion.  The purpose of this function is to 
> bracket
>       |  
> qual_trim.c:589:1: warning: "/*" within comment [-Wcomment]
>   589 | /* the portion of the sequence that is of decent quality -- i.e. to
>       |  
> qual_trim.c:590:1: warning: "/*" within comment [-Wcomment]
>   590 | /* eliminate the really bad quality stuff that is often found on 
> either
>       |  
> qual_trim.c:591:1: warning: "/*" within comment [-Wcomment]
>   591 | /* end.  The beginning of the first matching window, and the end of 
> the
>       |  
> qual_trim.c:592:1: warning: "/*" within comment [-Wcomment]
>   592 | /* last, bracket the sequence range that will be looked at to find the
>       |  
> qual_trim.c:593:1: warning: "/*" within comment [-Wcomment]
>   593 | /* final clean range.
>       |  
> qual_trim.c:594:1: warning: "/*" within comment [-Wcomment]
>   594 | /*
>       |  
> qual_trim.c:595:1: warning: "/*" within comment [-Wcomment]
>   595 | /* This function is called before the multi_window_trim function, and
>       |  
> qual_trim.c:596:1: warning: "/*" within comment [-Wcomment]
>   596 | /* its results are used to limit the range of sequence that will be
>       |  
> qual_trim.c:597:1: warning: "/*" within comment [-Wcomment]
>   597 | /* considered by that function.
>       |  
> qual_trim.c:598:1: warning: "/*" within comment [-Wcomment]
>   598 | /*
>       |  
> lucy.c:469:5: error: implicit declaration of function ‘default_windows’ 
> [-Werror=implicit-function-declaration]
>   469 |     default_windows();
>       |     ^~~~~~~~~~~~~~~
> lucy.c:531:51: warning: cast to pointer from integer of different size 
> [-Wint-to-pointer-cast]
>   531 |     if (pthread_create(&threads[i], NULL, worker, (void*)i))
>       |                                                   ^
> qual_trim.c:678:1: warning: "/*" within comment [-Wcomment]
>   678 | /* Determines the clean range.  Calls multi_window_trim, which calls 
> both
>       |  
> qual_trim.c:679:1: warning: "/*" within comment [-Wcomment]
>   679 | /* window_trim and average_error_trim.
>       |  
> qual_trim.c:680:1: warning: "/*" within comment [-Wcomment]
>   680 | /*
>       |  
> qual_trim.c:681:1: warning: "/*" within comment [-Wcomment]
>   681 | /* Globals used:
>       |  
> qual_trim.c:682:1: warning: "/*" within comment [-Wcomment]
>   682 | /*      int num_windows,        (number of windows)
>       |  
> qual_trim.c:683:1: warning: "/*" within comment [-Wcomment]
>   683 | /*      int *windows,           (array of window sizes (largest to 
> smallest))
>       |  
> qual_trim.c:684:1: warning: "/*" within comment [-Wcomment]
>   684 | /*      double *err_limits,     (array of maximum allowed average 
> probability)
>       |  
> qual_trim.c:685:1: warning: "/*" within comment [-Wcomment]
>   685 | /*                              (  for each window size)
>       |  
> qual_trim.c:686:1: warning: "/*" within comment [-Wcomment]
>   686 | /*      double max_avg_error,   (maximum allowed average probability 
> of error)
>       |  
> qual_trim.c:687:1: warning: "/*" within comment [-Wcomment]
>   687 | /*      double end_limit,       (maximum allowed probability of error 
> for bases)
>       |  
> qual_trim.c:688:1: warning: "/*" within comment [-Wcomment]
>   688 | /*                              (  at each end of clean range)
>       |  
> qual_trim.c:689:1: warning: "/*" within comment [-Wcomment]
>   689 | /*      int bracket_window,     (size of terminal window)
>       |  
> lucy.c:639:7: error: implicit declaration of function ‘quality_trim’ 
> [-Werror=implicit-function-declaration]
>   639 |       quality_trim(conf_val_raw, j, minimum, &(ptr->left), 
> &(ptr->right));
>       |       ^~~~~~~~~~~~
> qual_trim.c:690:1: warning: "/*" within comment [-Wcomment]
>   690 | /*      double bracket_error    (allowable average prob. error in 
> window)
>       |  
> qual_trim.c:691:1: warning: "/*" within comment [-Wcomment]
>   691 | /*
>       |  
> qual_trim.c: In function ‘quality_trim’:
> qual_trim.c:705:21: warning: unused variable ‘sum’ [-Wunused-variable]
>   705 |         double err, sum;
>       |                     ^~~
> qual_trim.c:705:16: warning: unused variable ‘err’ [-Wunused-variable]
>   705 |         double err, sum;
>       |                ^~~
> qual_trim.c: At top level:
> qual_trim.c:792:1: warning: "/*" within comment [-Wcomment]
>   792 | /* Sets up 3 windows for quality trimming, with the average error 
> allowed
>       |  
> qual_trim.c:793:1: warning: "/*" within comment [-Wcomment]
>   793 | /* in each window calculated from max_avg_error.
>       |  
> qual_trim.c:794:1: warning: "/*" within comment [-Wcomment]
>   794 | /*
>       |  
> lucy.c:669:5: error: implicit declaration of function ‘prepare_abi_mask’ 
> [-Werror=implicit-function-declaration]
>   669 |     prepare_abi_mask();
>       |     ^~~~~~~~~~~~~~~~
> qual_trim.c:795:1: warning: "/*" within comment [-Wcomment]
>   795 | /* Globals used:
>       |  
> lucy.c:713:9: error: implicit declaration of function ‘abi_align’ 
> [-Werror=implicit-function-declaration]
>   713 |         abi_align(phred_seq, ptr->len, abi_seq, bases, &left, &right);
>       |         ^~~~~~~~~
> qual_trim.c:796:1: warning: "/*" within comment [-Wcomment]
>   796 | /*      int num_windows,        (number of windows)
>       |  
> qual_trim.c:797:1: warning: "/*" within comment [-Wcomment]
>   797 | /*      int *windows,           (array of window sizes (largest to 
> smallest))
>       |  
> qual_trim.c:798:1: warning: "/*" within comment [-Wcomment]
>   798 | /*      double *err_limits,     (array of maximum allowed average 
> probability)
>       |  
> qual_trim.c:799:1: warning: "/*" within comment [-Wcomment]
>   799 | /*                              (for each window size)
>       |  
> lucy.c:792:15: warning: cast from pointer to integer of different size 
> [-Wpointer-to-int-cast]
>   792 |            (i=(int)fgets(buf, BUFFER_LENGTH, spl_file)) && 
> buf[0]!='>'; ) {
>       |               ^
> qual_trim.c:800:1: warning: "/*" within comment [-Wcomment]
>   800 | /*      double max_avg_error,   (maximum allowed average probability 
> of error)
>       |  
> qual_trim.c:801:1: warning: "/*" within comment [-Wcomment]
>   801 | /*
>       |  
> qual_trim.c:826:1: warning: "/*" within comment [-Wcomment]
>   826 | /* Simulates the functionality of the old grim() function, by calling
>       |  
> qual_trim.c:827:1: warning: "/*" within comment [-Wcomment]
>   827 | /* quality_trim().
>       |  
> qual_trim.c:828:1: warning: "/*" within comment [-Wcomment]
>   828 | /*
>       |  
> qual_trim.c:829:1: warning: "/*" within comment [-Wcomment]
>   829 | /* Globals used:
>       |  
> qual_trim.c:830:1: warning: "/*" within comment [-Wcomment]
>   830 | /*      int num_windows,        (number of windows)
>       |  
> qual_trim.c:831:1: warning: "/*" within comment [-Wcomment]
>   831 | /*      int *windows,           (array of window sizes (largest to 
> smallest))
>       |  
> qual_trim.c:832:1: warning: "/*" within comment [-Wcomment]
>   832 | /*      double *err_limits,     (array of maximum allowed average 
> probability)
>       |  
> qual_trim.c:833:1: warning: "/*" within comment [-Wcomment]
>   833 | /*                              (for each window size)
>       |  
> qual_trim.c:834:1: warning: "/*" within comment [-Wcomment]
>   834 | /*      double max_avg_error,   (maximum allowed average probability 
> of error)
>       |  
> qual_trim.c:835:1: warning: "/*" within comment [-Wcomment]
>   835 | /*      double end_limit,       (maximum allowed probability of error 
> for bases)
>       |  
> qual_trim.c:836:1: warning: "/*" within comment [-Wcomment]
>   836 | /*                              (  at each end of clean range)
>       |  
> qual_trim.c:837:1: warning: "/*" within comment [-Wcomment]
>   837 | /*
>       |  
> lucy.c:891:14: error: implicit declaration of function ‘poly_at_left’ 
> [-Werror=implicit-function-declaration]
>   891 |         left=poly_at_left(&phred_seq[seqs[i].left],
>       |              ^~~~~~~~~~~~
> lucy.c:894:15: error: implicit declaration of function ‘poly_at_right’ 
> [-Werror=implicit-function-declaration]
>   894 |         right=poly_at_right(&phred_seq[seqs[i].right],
>       |               ^~~~~~~~~~~~~
> abi.c: In function ‘abi_code’:
> abi.c:84:10: warning: ‘tmp’ may be used uninitialized [-Wmaybe-uninitialized]
>    84 |   return tmp;
>       |          ^~~
> abi.c:62:16: note: ‘tmp’ was declared here
>    62 |   register int tmp;
>       |                ^~~
> lucy.c:934:5: error: implicit declaration of function ‘construct_vector_tags’ 
> [-Werror=implicit-function-declaration]
>   934 |     construct_vector_tags(vec_seq, bases);
>       |     ^~~~~~~~~~~~~~~~~~~~~
> lucy.c:947:11: error: implicit declaration of function ‘match_vector_tags’ 
> [-Werror=implicit-function-declaration]
>   947 |         j=match_vector_tags(phred_seq+seqs[i].left, bases);
>       |           ^~~~~~~~~~~~~~~~~
> cc1: some warnings being treated as errors
> lucy.c:959:5: error: implicit declaration of function ‘destroy_vector_tags’ 
> [-Werror=implicit-function-declaration]
>   959 |     destroy_vector_tags();
>       |     ^~~~~~~~~~~~~~~~~~~
> make[1]: *** [<builtin>: poly.o] Error 1


The full build log is available from:
http://qa-logs.debian.net/2024/03/13/lucy_1.20-3_unstable.log

All bugs filed during this archive rebuild are listed at:
https://bugs.debian.org/cgi-bin/pkgreport.cgi?tag=ftbfs-20240313;users=lu...@debian.org
or:
https://udd.debian.org/bugs/?release=na&merged=ign&fnewerval=7&flastmodval=7&fusertag=only&fusertagtag=ftbfs-20240313&fusertaguser=lu...@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.

--- End Message ---
--- Begin Message ---
Source: lucy
Source-Version: 1.20-4
Done: Nilesh Patra <nil...@iki.fi>

We believe that the bug you reported is fixed in the latest version of
lucy, which is due to be installed in the Debian FTP archive.

A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to 1066...@bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Nilesh Patra <nil...@iki.fi> (supplier of updated lucy package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing ftpmas...@ftp-master.debian.org)


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

Format: 1.8
Date: Sun, 24 Mar 2024 22:18:20 +0530
Source: lucy
Architecture: source
Version: 1.20-4
Distribution: unstable
Urgency: medium
Maintainer: Debian Med Packaging Team 
<debian-med-packag...@lists.alioth.debian.org>
Changed-By: Nilesh Patra <nil...@iki.fi>
Closes: 1047296 1066324
Changes:
 lucy (1.20-4) unstable; urgency=medium
 .
   * Team Upload.
   * Remove myself from Uploaders.
   * Add patch to fix FTBFS with
     implicit-function-declaration (Closes: #1066324)
   * Add patch to remove .PU macro rather than trying
     to hack it in d/rules (Closes: #1047296)
Checksums-Sha1:
 2b58311d4f65551706058509007c77eec6c19ea4 1275 lucy_1.20-4.dsc
 45f76f2d52522a996cbf6e4ce01f0eb2fbd66f31 4632 lucy_1.20-4.debian.tar.xz
 f0cdc6ed18323b372a6d3f3bb1ec6e229f404d42 5290 lucy_1.20-4_amd64.buildinfo
Checksums-Sha256:
 7608c2469251d9aac057bc936d2009bed880feb0c0f52c00b2b06fa20a0066ff 1275 
lucy_1.20-4.dsc
 919dfa371d076783a5308e85b4085e5c10f7c4e4c91593b3540ebad73b7e2cfe 4632 
lucy_1.20-4.debian.tar.xz
 0d7aff84a37f7465f5e3ae7f4182ee3986e5953c03005f8f1b03eabef00254a9 5290 
lucy_1.20-4_amd64.buildinfo
Files:
 f9a8aded554ce0c4ae10fb3f597644fd 1275 science optional lucy_1.20-4.dsc
 6a2bce9f4aae8f2f004fe42b4f54be3d 4632 science optional 
lucy_1.20-4.debian.tar.xz
 1f8be498e1af19f60b1df1354c443e94 5290 science optional 
lucy_1.20-4_amd64.buildinfo

-----BEGIN PGP SIGNATURE-----

iHUEARYIAB0WIQSglbZu4JAkvuai8HIqJ5BL1yQ+2gUCZgBa6QAKCRAqJ5BL1yQ+
2gNlAP9DVdNFtb/V70xTTbyEdqbAQzQV9V0EQ0czJmsB97orswEAjlk/FSQZMcDP
GpGzo3hD7OTbrs8EDUXXPrtgQSnKbAE=
=T2Jr
-----END PGP SIGNATURE-----

Attachment: pgpqZNikUlx_P.pgp
Description: PGP signature


--- End Message ---

Reply via email to