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.