The branch main has been updated by ivy:

URL: 
https://cgit.FreeBSD.org/src/commit/?id=f1d98862044f7748c6f930e9d4339abc166a5b16

commit f1d98862044f7748c6f930e9d4339abc166a5b16
Author:     Lexi Winter <[email protected]>
AuthorDate: 2026-08-03 14:02:51 +0000
Commit:     Lexi Winter <[email protected]>
CommitDate: 2026-08-03 14:02:51 +0000

    libc: getopt{,_long}: Const correctness for C23
    
    On some platforms, e.g. Linux Clang 22.1.8 / glibc 2.43, strchr()
    now implements the C23 behaviour where passing a const pointer to
    strchr() also returns a const pointer.  This breaks getopt during
    the bootstrap build, since it assumes the return value is always
    a mutable pointer.
    
    Since the pointed-to value is never modified, fix this by making
    the pointer const.
    
    MFC after:      1 week
    Reviewed by:    emaste
    Sponsored by:   The FreeBSD Foundation
    Differential Revision:  https://reviews.freebsd.org/D58488
---
 lib/libc/stdlib/getopt.c      | 2 +-
 lib/libc/stdlib/getopt_long.c | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/lib/libc/stdlib/getopt.c b/lib/libc/stdlib/getopt.c
index 2b5e3fa69032..e1edc5a3ee83 100644
--- a/lib/libc/stdlib/getopt.c
+++ b/lib/libc/stdlib/getopt.c
@@ -57,7 +57,7 @@ int
 getopt(int nargc, char * const nargv[], const char *ostr)
 {
        static char *place = EMSG;              /* option letter processing */
-       char *oli;                              /* option letter list index */
+       const char *oli;                        /* option letter list index */
 
        if (optreset || *place == 0) {          /* update scanning pointer */
                optreset = 0;
diff --git a/lib/libc/stdlib/getopt_long.c b/lib/libc/stdlib/getopt_long.c
index 5cf6a55649bd..99be520fe332 100644
--- a/lib/libc/stdlib/getopt_long.c
+++ b/lib/libc/stdlib/getopt_long.c
@@ -349,7 +349,7 @@ static int
 getopt_internal(int nargc, char * const *nargv, const char *options,
        const struct option *long_options, int *idx, int flags)
 {
-       char *oli;                              /* option letter list index */
+       const char *oli;                        /* option letter list index */
        int optchar, short_too;
        static int posixly_correct = -1;
 

Reply via email to