[Libreoffice-commits] core.git: include/com sw/source

Stephan Bergmann (via logerrit) logerrit at kemper.freedesktop.org
Tue Dec 3 18:46:11 UTC 2019


 include/com/sun/star/uno/Any.hxx             |    2 +-
 sw/source/filter/ww8/docxattributeoutput.cxx |    2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

New commits:
commit e8cb5f2e11838060f85e7940540b5f7096d9eeb7
Author:     Stephan Bergmann <sbergman at redhat.com>
AuthorDate: Tue Dec 3 13:30:41 2019 +0100
Commit:     Stephan Bergmann <sbergman at redhat.com>
CommitDate: Tue Dec 3 19:44:37 2019 +0100

    Adapt to C++20 deleted ostream << for sal_Unicode (aka char16_t)
    
    <http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2019/p1423r3.html> "char8_t
    backward compatibility remediation", as implemented now by <https://gcc.gnu.org/
    git/?p=gcc.git;a=commit;h=0c5b35933e5b150df0ab487efb2f11ef5685f713> "libstdc++:
    P1423R3 char8_t remediation (2/4)" for -std=c++2a, deletes operator << overloads
    that would print an integer rather than a (presumably expected) character.
    
    But in these cases printing an integer is as expected, so add explicit casts.
    
    Change-Id: I7c2f1afaa2982b284aef8af183b71466c37142c2
    Reviewed-on: https://gerrit.libreoffice.org/84339
    Tested-by: Jenkins
    Reviewed-by: Stephan Bergmann <sbergman at redhat.com>

diff --git a/include/com/sun/star/uno/Any.hxx b/include/com/sun/star/uno/Any.hxx
index 05f032fc5b81..c7089a0b5810 100644
--- a/include/com/sun/star/uno/Any.hxx
+++ b/include/com/sun/star/uno/Any.hxx
@@ -720,7 +720,7 @@ inline std::basic_ostream<charT, traits> &operator<<(std::basic_ostream<charT, t
                 std::ios_base::hex, std::ios_base::basefield);
             charT fill = o.fill('0');
             o << " U+" << std::setw(4)
-              << *static_cast<sal_Unicode const *>(any.getValue());
+              << unsigned(*static_cast<sal_Unicode const *>(any.getValue()));
             o.setf(flgs);
             o.fill(fill);
             break;
diff --git a/sw/source/filter/ww8/docxattributeoutput.cxx b/sw/source/filter/ww8/docxattributeoutput.cxx
index 91d77e81ddbb..c9b1835ab792 100644
--- a/sw/source/filter/ww8/docxattributeoutput.cxx
+++ b/sw/source/filter/ww8/docxattributeoutput.cxx
@@ -2783,7 +2783,7 @@ void DocxAttributeOutput::RunText( const OUString& rText, rtl_TextEncoding /*eCh
                 if ( *pIt < 0x0020 ) // filter out the control codes
                 {
                     impl_WriteRunText( m_pSerializer, nTextToken, pBegin, pIt );
-                    SAL_INFO("sw.ww8", "Ignored control code in a text run: " << *pIt );
+                    SAL_INFO("sw.ww8", "Ignored control code in a text run: " << unsigned(*pIt) );
                 }
                 prevUnicode = *pIt;
                 break;


More information about the Libreoffice-commits mailing list