https://gcc.gnu.org/bugzilla/show_bug.cgi?id=125956

--- Comment #17 from GCC Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Jonathan Wakely <[email protected]>:

https://gcc.gnu.org/g:83f0ad40a472d98bf1ed38b7d1c4865fdcb5e068

commit r17-1846-g83f0ad40a472d98bf1ed38b7d1c4865fdcb5e068
Author: Jonathan Wakely <[email protected]>
Date:   Wed Jun 24 16:56:25 2026 +0100

    libstdc++: Workaround legacy iconv signature [PR125956]

    The signature of iconv in SUSv2 and legacy systems used const char** for
    the second parameter. We already have a workaround for this in the
    <ext/codecvt_specializations.h> header, but were not handling this when
    using iconv in src/c++20/format.cc.

    Define a concept to check that we can call iconv with a char** and then
    use that to decide which type we cast the input pointer to.

    libstdc++-v3/ChangeLog:

            PR libstdc++/125956
            * src/c++20/format.cc [_GLIBCXX_HAVE_ICONV] (iconv_input): New
            concept.
            (__encoding::conv) [_GLIBCXX_HAVE_ICONV]: Use iconv_input to
            decide which type to cast the input pointer to.

    Reviewed-by: Tomasz KamiÅski <[email protected]>

Reply via email to