FYI FreeBSD clang build fails on new import of sort

Garrett Cooper yanegomi at gmail.com
Mon May 14 00:49:15 UTC 2012


On Sun, May 13, 2012 at 5:02 PM, Outback Dingo <outbackdingo at gmail.com> wrote:
> trying to rerun a clang build of FreeBSD CURRENT fails on new import of sort,
>
> cat /etc/src.conf
> WITH_CLANG_IS_CC=1
> make world
> ---------------------SNIP---------------------------
> clang -O2 -pipe  -DSORT_THREADS -std=gnu99 -Qunused-arguments
> -fstack-protector -Wsystem-headers -Werror -Wall -Wno-format-y2k -W
> -Wno-unused-parameter -Wstrict-prototypes -Wmissing-prototypes
> -Wpointer-arith -Wreturn-type -Wcast-qual -Wwrite-strings -Wswitch
> -Wshadow -Wunused-parameter -Wcast-align -Wchar-subscripts -Winline
> -Wnested-externs -Wredundant-decls -Wold-style-definition
> -Wno-pointer-sign -Wno-empty-body -Wno-string-plus-int -c
> /usr/src/usr.bin/sort/coll.c
> clang -O2 -pipe  -DSORT_THREADS -std=gnu99 -Qunused-arguments
> -fstack-protector -Wsystem-headers -Werror -Wall -Wno-format-y2k -W
> -Wno-unused-parameter -Wstrict-prototypes -Wmissing-prototypes
> -Wpointer-arith -Wreturn-type -Wcast-qual -Wwrite-strings -Wswitch
> -Wshadow -Wunused-parameter -Wcast-align -Wchar-subscripts -Winline
> -Wnested-externs -Wredundant-decls -Wold-style-definition
> -Wno-pointer-sign -Wno-empty-body -Wno-string-plus-int -c
> /usr/src/usr.bin/sort/file.c
> /usr/src/usr.bin/sort/file.c:601:12: error: format string is not a
> string literal (potentially insecure) [-Werror,-Wformat-security]
>                                err(2, getstr(7));
>                                       ^~~~~~~~~
> /usr/src/usr.bin/sort/sort.h:52:20: note: expanded from macro 'getstr'
> #define getstr(n)        catgets(catalog, 1, n, nlsstr[n])
>                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> /usr/src/usr.bin/sort/file.c:942:11: error: format string is not a
> string literal (potentially insecure) [-Werror,-Wformat-security]
>                        err(2, getstr(8));
>                               ^~~~~~~~~
> /usr/src/usr.bin/sort/sort.h:52:20: note: expanded from macro 'getstr'
> #define getstr(n)        catgets(catalog, 1, n, nlsstr[n])
>                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> /usr/src/usr.bin/sort/file.c:1279:10: error: format string is not a
> string literal (potentially insecure) [-Werror,-Wformat-security]
>                err(2, getstr(9));
>                       ^~~~~~~~~
> /usr/src/usr.bin/sort/sort.h:52:20: note: expanded from macro 'getstr'
> #define getstr(n)        catgets(catalog, 1, n, nlsstr[n])
>                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> /usr/src/usr.bin/sort/file.c:1295:12: error: format string is not a
> string literal (potentially insecure) [-Werror,-Wformat-security]
>                        errx(2, getstr(10));
>                                ^~~~~~~~~~
> /usr/src/usr.bin/sort/sort.h:52:20: note: expanded from macro 'getstr'
> #define getstr(n)        catgets(catalog, 1, n, nlsstr[n])
>                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> 4 errors generated.
> *** [file.o] Error code 1
>
> Stop in /usr/src/usr.bin/sort.

Yeah... errx(2, getstr(9)) should be errx(2, "%s", getstr(9))...
-Garrett


More information about the freebsd-current mailing list