net-mail/perdition-1.18 fails to build with errors because of a multi line macro in net-libs/vanessa-socket is being substituted into several if/else lines without brackets. Reproducible: Always Steps to Reproduce: Actual Results: perdition.c: In function 'main': perdition.c:546:6: warning: assignment makes pointer from integer without a cast perdition.c:712:7: error: expected '}' before 'else' perdition.c:718:5: error: 'else' without a previous 'if' perdition.c:735:7: error: continue statement not within a loop perdition.c:743:6: error: continue statement not within a loop perdition.c:799:6: error: continue statement not within a loop perdition.c:821:9: error: continue statement not within a loop perdition.c:847:6: error: continue statement not within a loop perdition.c:886:6: error: continue statement not within a loop perdition.c:911:6: error: continue statement not within a loop perdition.c:937:6: error: continue statement not within a loop perdition.c:943:6: error: continue statement not within a loop perdition.c:950:7: error: expected '}' before 'else' perdition.c: At top level: perdition.c:955:5: error: expected identifier or '(' before 'if' perdition.c:964:5: error: expected identifier or '(' before 'else' perdition.c:973:5: error: expected identifier or '(' before 'break' perdition.c:974:3: error: expected identifier or '(' before '}' token perdition.c:976:3: error: expected identifier or '(' before 'do' perdition.c:976:98: error: expected identifier or '(' before 'while' perdition.c:978:3: error: expected identifier or '(' before 'if' perdition.c:983:3: error: expected identifier or '(' before 'if' perdition.c:990:32: error: expected ')' before '.' token perdition.c:991:32: error: expected ')' before '.' token perdition.c:992:3: error: expected identifier or '(' before 'if' perdition.c:1004:43: error: expected ')' before numeric constant perdition.c:1008:18: error: expected declaration specifiers or '...' before string constant perdition.c:1008:31: error: expected declaration specifiers or '...' before 'progname' perdition.c:1008:3: warning: data definition has no type or storage class perdition.c:1008:3: error: conflicting types for 'set_proc_title' setproctitle.h:61:6: note: previous declaration of 'set_proc_title' was here perdition.c:1010:3: warning: data definition has no type or storage class perdition.c:1010:3: warning: parameter names (without types) in function declaration perdition.c:1011:26: error: expected declaration specifiers or '...' before numeric constant perdition.c:1011:3: warning: data definition has no type or storage class perdition.c:1011:3: error: conflicting types for 'perdition_exit_cleanly' perdition.c:107:13: note: previous declaration of 'perdition_exit_cleanly' was here perdition.c:1014:3: error: expected identifier or '(' before 'return' perdition.c:1015:1: error: expected identifier or '(' before '}' token perdition.c:1069:1: error: conflicting types for 'perdition_exit_cleanly' perdition.c:1011:3: note: previous declaration of 'perdition_exit_cleanly' was here perdition.c:107:13: warning: 'perdition_exit_cleanly' used but never defined make[3]: *** [perdition.o] Error 1 make[3]: *** Waiting for unfinished jobs.... Reproducible: Always Steps to Reproduce: 1. emerge --sync 2. emerge =net-mail/vanessa-socket-1.18 Actual Results: perdition.c: In function 'main': perdition.c:546:6: warning: assignment makes pointer from integer without a cast perdition.c:712:7: error: expected '}' before 'else' perdition.c:718:5: error: 'else' without a previous 'if' perdition.c:735:7: error: continue statement not within a loop perdition.c:743:6: error: continue statement not within a loop perdition.c:799:6: error: continue statement not within a loop perdition.c:821:9: error: continue statement not within a loop perdition.c:847:6: error: continue statement not within a loop perdition.c:886:6: error: continue statement not within a loop perdition.c:911:6: error: continue statement not within a loop perdition.c:937:6: error: continue statement not within a loop perdition.c:943:6: error: continue statement not within a loop perdition.c:950:7: error: expected '}' before 'else' perdition.c: At top level: perdition.c:955:5: error: expected identifier or '(' before 'if' perdition.c:964:5: error: expected identifier or '(' before 'else' perdition.c:973:5: error: expected identifier or '(' before 'break' perdition.c:974:3: error: expected identifier or '(' before '}' token perdition.c:976:3: error: expected identifier or '(' before 'do' perdition.c:976:98: error: expected identifier or '(' before 'while' perdition.c:978:3: error: expected identifier or '(' before 'if' perdition.c:983:3: error: expected identifier or '(' before 'if' perdition.c:990:32: error: expected ')' before '.' token perdition.c:991:32: error: expected ')' before '.' token perdition.c:992:3: error: expected identifier or '(' before 'if' perdition.c:1004:43: error: expected ')' before numeric constant perdition.c:1008:18: error: expected declaration specifiers or '...' before string constant perdition.c:1008:31: error: expected declaration specifiers or '...' before 'progname' perdition.c:1008:3: warning: data definition has no type or storage class perdition.c:1008:3: error: conflicting types for 'set_proc_title' setproctitle.h:61:6: note: previous declaration of 'set_proc_title' was here perdition.c:1010:3: warning: data definition has no type or storage class perdition.c:1010:3: warning: parameter names (without types) in function declaration perdition.c:1011:26: error: expected declaration specifiers or '...' before numeric constant perdition.c:1011:3: warning: data definition has no type or storage class perdition.c:1011:3: error: conflicting types for 'perdition_exit_cleanly' perdition.c:107:13: note: previous declaration of 'perdition_exit_cleanly' was here perdition.c:1014:3: error: expected identifier or '(' before 'return' perdition.c:1015:1: error: expected identifier or '(' before '}' token perdition.c:1069:1: error: conflicting types for 'perdition_exit_cleanly' perdition.c:1011:3: note: previous declaration of 'perdition_exit_cleanly' was here perdition.c:107:13: warning: 'perdition_exit_cleanly' used but never defined make[3]: *** [perdition.o] Error 1 make[3]: *** Waiting for unfinished jobs.... Expected Results: Software compiles
Created attachment 299751 [details, diff] A patch that will work around the problems to allow perdition to compile
Please attach full build log please.
The package was removed in 2016.