[MacPorts] #72445: sc @7.16_3: compilation fails

MacPorts noreply at macports.org
Mon May 5 13:57:42 UTC 2025


#72445: sc @7.16_3: compilation fails
----------------------+--------------------
 Reporter:  gordon84  |      Owner:  (none)
     Type:  defect    |     Status:  new
 Priority:  Normal    |  Milestone:
Component:  ports     |    Version:  2.10.5
 Keywords:            |       Port:  sc
----------------------+--------------------
 clang generates an error when compiling sc.c.  Compilation failure below.

 {{{
 :info:build /usr/bin/clang -I/opt/local/include -Os -arch arm64 -DSYSV3
 -O2 -pipe -g -DDFLT_PAGER=\"less\" -DSIGVOID -DSAVENAME=\"SC.SAVE\" -c
 sc.c
 :info:build cmds.c:544:8: warning: format string is not a string literal
 (potentially insecure) [-Wformat-security]
 :info:build   544 |         error(buf);
 :info:build       |               ^~~
 :info:build ./sc.h:46:101: note: expanded from macro 'error'
 :info:build    46 | # define error(format, msg...)
 (void)(isatty(fileno(stdout)) && !move(1,0) && !clrtoeol() &&
 printw(format, ## msg))
 :info:build       |
 ^~~~~~
 :info:build cmds.c:544:8: note: treat the string as an argument to avoid
 this
 :info:build   544 |         error(buf);
 :info:build       |               ^
 :info:build       |               "%s",
 :info:build ./sc.h:46:101: note: expanded from macro 'error'
 :info:build    46 | # define error(format, msg...)
 (void)(isatty(fileno(stdout)) && !move(1,0) && !clrtoeol() &&
 printw(format, ## msg))
 :info:build       |
 ^
 :info:build interp.c:787:21: error: call to undeclared library function
 'finite' with type 'int (double)'; ISO C99 and later do not support
 implicit function declarations [-Wimplicit-function-declaration]
 :info:build   787 |         case O_CONST:   if (!finite(e->e.k)) {
 :info:build       |                              ^
 :info:build interp.c:787:21: note: include the header <math.h> or
 explicitly provide a declaration for 'finite'
 :info:build interp.c:998:16: warning: passing arguments to a function
 without a prototype is deprecated in all versions of C and is not
 supported in C23 [-Wdeprecated-non-prototype]
 :info:build   998 |     res = (*fn)(arg);
 :info:build       |                ^
 :info:build interp.c:1010:16: warning: passing arguments to a function
 without a prototype is deprecated in all versions of C and is not
 supported in C23 [-Wdeprecated-non-prototype]
 :info:build  1010 |     res = (*fn)(arg1, arg2);
 :info:build       |                ^
 :info:build interp.c:1989:8: warning: format string is not a string
 literal (potentially insecure) [-Wformat-security]
 :info:build  1989 |         error(tmp);
 :info:build       |               ^~~
 :info:build ./sc.h:46:101: note: expanded from macro 'error'
 :info:build    46 | # define error(format, msg...)
 (void)(isatty(fileno(stdout)) && !move(1,0) && !clrtoeol() &&
 printw(format, ## msg))
 :info:build       |
 ^~~~~~
 :info:build interp.c:1989:8: note: treat the string as an argument to
 avoid this
 :info:build  1989 |         error(tmp);
 :info:build       |               ^
 :info:build       |               "%s",
 :info:build ./sc.h:46:101: note: expanded from macro 'error'
 :info:build    46 | # define error(format, msg...)
 (void)(isatty(fileno(stdout)) && !move(1,0) && !clrtoeol() &&
 printw(format, ## msg))
 :info:build       |
 ^
 :info:build cmds.c:1215:8: warning: format string is not a string literal
 (potentially insecure) [-Wformat-security]
 :info:build  1215 |         error(buf);
 :info:build       |               ^~~
 :info:build ./sc.h:46:101: note: expanded from macro 'error'
 :info:build    46 | # define error(format, msg...)
 (void)(isatty(fileno(stdout)) && !move(1,0) && !clrtoeol() &&
 printw(format, ## msg))
 :info:build       |
 ^~~~~~
 :info:build cmds.c:1215:8: note: treat the string as an argument to avoid
 this
 :info:build  1215 |         error(buf);
 :info:build       |               ^
 :info:build       |               "%s",
 :info:build ./sc.h:46:101: note: expanded from macro 'error'
 :info:build    46 | # define error(format, msg...)
 (void)(isatty(fileno(stdout)) && !move(1,0) && !clrtoeol() &&
 printw(format, ## msg))
 :info:build       |
 ^
 :info:build cmds.c:1471:11: error: parameter 'arg' was not declared,
 defaults to 'int'; ISO C99 and later do not support implicit int
 [-Wimplicit-int]
 :info:build  1471 | formatcol(arg)
 :info:build       |           ^
 :info:build  1472 | {
 :info:build cmds.c:1471:1: warning: a function definition without a
 prototype is deprecated in all versions of C and is not supported in C23
 [-Wdeprecated-non-prototype]
 :info:build  1471 | formatcol(arg)
 :info:build       | ^
 :info:build cmds.c:1606:22: error: parameter 'ec' was not declared,
 defaults to 'int'; ISO C99 and later do not support implicit int
 [-Wimplicit-int]
 :info:build  1606 | ljustify(sr, sc, er, ec)
 :info:build       |                      ^
 :info:build  1607 | {
 :info:build cmds.c:1606:18: error: parameter 'er' was not declared,
 defaults to 'int'; ISO C99 and later do not support implicit int
 [-Wimplicit-int]
 :info:build  1606 | ljustify(sr, sc, er, ec)
 :info:build       |                  ^
 :info:build  1607 | {
 :info:build cmds.c:1606:14: error: parameter 'sc' was not declared,
 defaults to 'int'; ISO C99 and later do not support implicit int
 [-Wimplicit-int]
 :info:build  1606 | ljustify(sr, sc, er, ec)
 :info:build       |              ^
 :info:build  1607 | {
 :info:build cmds.c:1606:10: error: parameter 'sr' was not declared,
 defaults to 'int'; ISO C99 and later do not support implicit int
 [-Wimplicit-int]
 :info:build  1606 | ljustify(sr, sc, er, ec)
 :info:build       |          ^
 :info:build  1607 | {
 :info:build cmds.c:1606:1: warning: a function definition without a
 prototype is deprecated in all versions of C and is not supported in C23
 [-Wdeprecated-non-prototype]
 :info:build  1606 | ljustify(sr, sc, er, ec)
 :info:build       | ^
 :info:build cmds.c:1635:22: error: parameter 'ec' was not declared,
 defaults to 'int'; ISO C99 and later do not support implicit int
 [-Wimplicit-int]
 :info:build  1635 | rjustify(sr, sc, er, ec)
 :info:build       |                      ^
 :info:build  1636 | {
 :info:build cmds.c:1635:18: error: parameter 'er' was not declared,
 defaults to 'int'; ISO C99 and later do not support implicit int
 [-Wimplicit-int]
 :info:build  1635 | rjustify(sr, sc, er, ec)
 :info:build       |                  ^
 :info:build  1636 | {
 :info:build cmds.c:1635:14: error: parameter 'sc' was not declared,
 defaults to 'int'; ISO C99 and later do not support implicit int
 [-Wimplicit-int]
 :info:build  1635 | rjustify(sr, sc, er, ec)
 :info:build       |              ^
 :info:build  1636 | {
 :info:build cmds.c:1635:10: error: parameter 'sr' was not declared,
 defaults to 'int'; ISO C99 and later do not support implicit int
 [-Wimplicit-int]
 :info:build  1635 | rjustify(sr, sc, er, ec)
 :info:build       |          ^
 :info:build  1636 | {
 :info:build cmds.c:1635:1: warning: a function definition without a
 prototype is deprecated in all versions of C and is not supported in C23
 [-Wdeprecated-non-prototype]
 :info:build  1635 | rjustify(sr, sc, er, ec)
 :info:build       | ^x
 :info:build 3 warnings and 1 error generated.
 }}}

-- 
Ticket URL: <https://trac.macports.org/ticket/72445>
MacPorts <https://www.macports.org/>
Ports system for macOS


More information about the macports-tickets mailing list