Hi,
I have submitted a patch for review:
https://gerrit.libreoffice.org/1798
To pull it, you can do:
git pull ssh://gerrit.libreoffice.org:29418/core refs/changes/98/1798/1
Detect SvStream::operator<< calls with bool args w/o using -Wsign-promo
...as -Wsign-promo caused other problems and has been removed again with
488823a140217e393298bc83e75084041a85ed45 "Remove -Wsign-promo." It had
originally been introduced with e8bbb76827dd7a0e30d7d1db34a812a84d85f390 "ensure
correct export size type in stream operation," apparently to detect an
SvStream::operator<< call with a bool argument that would pick the "int"
overload instead of the "unsigned char" (aka sal_Bool) one (which would have
happened to trigger the -Wsign-promo warning "by luck," given that sal_Bool is
unsigned char and not signed char, say).
Change-Id: I0bf4389753e53a535bd90ca2a98b6a5be63d179a
---
M tools/inc/tools/stream.hxx
1 file changed, 2 insertions(+), 0 deletions(-)
diff --git a/tools/inc/tools/stream.hxx b/tools/inc/tools/stream.hxx
index abd6520..23d4a04 100644
--- a/tools/inc/tools/stream.hxx
+++ b/tools/inc/tools/stream.hxx
@@ -324,6 +324,8 @@
SvStream& operator<<( sal_Int32 nInt32 );
SvStream& operator<<( sal_Int64 nInt64 );
+ SvStream& operator<<( bool b )
+ { return operator<<(static_cast< sal_Bool >(b)); }
SvStream& operator<<( signed char nChar );
SvStream& operator<<( char nChar );
SvStream& operator<<( unsigned char nChar );
--
To view, visit https://gerrit.libreoffice.org/1798
To unsubscribe, visit https://gerrit.libreoffice.org/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: I0bf4389753e53a535bd90ca2a98b6a5be63d179a
Gerrit-PatchSet: 1
Gerrit-Project: core
Gerrit-Branch: master
Gerrit-Owner: Stephan Bergmann <sbergman@redhat.com>
Context
- [PATCH] Detect SvStream::operator<< calls with bool args w/o using -... · Stephan Bergmann (via Code Review)
Privacy Policy |
Impressum (Legal Info) |
Copyright information: Unless otherwise specified, all text and images
on this website are licensed under the
Creative Commons Attribution-Share Alike 3.0 License.
This does not include the source code of LibreOffice, which is
licensed under the Mozilla Public License (
MPLv2).
"LibreOffice" and "The Document Foundation" are
registered trademarks of their corresponding registered owners or are
in actual use as trademarks in one or more countries. Their respective
logos and icons are also subject to international copyright laws. Use
thereof is explained in our
trademark policy.