Stephan Bergmann a8ab80c58a Silence some clang-cl loplugin:stringstatic
For one, do not warn about global declarations in included files, as generally
not all uses of the variable are seen to decided whether it would be good to
replace.  That covers cases like

> In file included from dtrans/source/win32/dtobj/DataFmtTransl.cxx:26:
> dtrans/source/win32/dtobj/MimeAttrib.hxx(29,16): error: rather declare this using OUStringLiteral/OStringLiteral/char[] [loplugin:stringstatic]
> const OUString CHARSET_UTF16        ("utf-16");
> ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

For another, do not warn about variables whose pData member is used. That covers
cases like

> sal/osl/w32/procimpl.cxx(347,20): error: rather declare this using OUStringLiteral/OStringLiteral/char[] [loplugin:stringstatic]
>     const OUString ENV_COMSPEC ("COMSPEC");
>     ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~

Change-Id: I75c1048098b63164bdb583695951f73964cb24f8
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/101134
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2020-08-21 12:07:30 +02:00

30 lines
1017 B
C++

/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4; fill-column: 100 -*- */
/*
* This file is part of the LibreOffice project.
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
*/
#include <rtl/ustring.hxx>
#include "stringstatic.hxx"
// expected-error@+1 {{rather declare this using OUStringLiteral/OStringLiteral/char[] [loplugin:stringstatic]}}
static const OUString TEST1 = "xxx";
void f(rtl_uString const*);
void test2()
{
// expected-error@+1 {{rather declare this using OUStringLiteral/OStringLiteral/char[] [loplugin:stringstatic]}}
static const OUString XXX = "xxx";
// expected-error@+1 {{rather declare this using OUStringLiteral/OStringLiteral/char[] [loplugin:stringstatic]}}
static const OUString XXX2 = "xxx";
(void)XXX;
(void)XXX2;
static const OUString DATA = "xxx";
f(DATA.pData);
}