summaryrefslogtreecommitdiff
path: root/compilerplugins/clang
diff options
context:
space:
mode:
Diffstat (limited to 'compilerplugins/clang')
-rw-r--r--compilerplugins/clang/test/unusedvarsglobal.cxx27
-rw-r--r--compilerplugins/clang/unusedvarsglobal.cxx81
-rw-r--r--compilerplugins/clang/unusedvarsglobal.untouched.results242
-rw-r--r--compilerplugins/clang/unusedvarsglobal.writeonly.results392
4 files changed, 460 insertions, 282 deletions
diff --git a/compilerplugins/clang/test/unusedvarsglobal.cxx b/compilerplugins/clang/test/unusedvarsglobal.cxx
new file mode 100644
index 000000000000..98a9970a06df
--- /dev/null
+++ b/compilerplugins/clang/test/unusedvarsglobal.cxx
@@ -0,0 +1,27 @@
+/* -*- 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 "config_clang.h"
+
+// CLANG_VERSION = older versions of clang need something different in getParentFunctionDecl
+// WIN32 = TODO, see corresponding TODO in compilerplugins/clang/unusedfields.cxx
+#if CLANG_VERSION < 110000 || defined _WIN32
+// expected-no-diagnostics
+#else
+
+#include <rtl/ustring.hxx>
+
+namespace something
+{
+// expected-error@+1 {{write [loplugin:unusedvarsglobal]}}
+extern const OUStringLiteral literal1;
+}
+const OUStringLiteral something::literal1(u"xxx");
+
+#endif
+/* vim:set shiftwidth=4 softtabstop=4 expandtab cinoptions=b1,g0,N-s cinkeys+=0=break: */
diff --git a/compilerplugins/clang/unusedvarsglobal.cxx b/compilerplugins/clang/unusedvarsglobal.cxx
index 4619bd3617c5..508da0cb451f 100644
--- a/compilerplugins/clang/unusedvarsglobal.cxx
+++ b/compilerplugins/clang/unusedvarsglobal.cxx
@@ -31,32 +31,15 @@
/**
This performs two analyses:
- (1) look for unused fields
- (2) look for fields that are write-only
-
-We dmp a list of calls to methods, and a list of field definitions.
-Then we will post-process the 2 lists and find the set of unused methods.
-
-Be warned that it produces around 5G of log file.
-
-The process goes something like this:
- $ make check
- $ make FORCE_COMPILE_ALL=1 COMPILER_PLUGIN_TOOL='UnusedVarsGlobal' check
- $ ./compilerplugins/clang/UnusedVarsGlobal.py
-
-and then
- $ for dir in *; do make FORCE_COMPILE_ALL=1 UPDATE_FILES=$dir COMPILER_PLUGIN_TOOL='UnusedVarsGlobalremove' $dir; done
-to auto-remove the method declarations
-
-Note that the actual process may involve a fair amount of undoing, hand editing, and general messing around
-to get it to work :-)
-
+ (1) look for unused global vars
+ (2) look for global vars that are write-only
*/
namespace
{
struct MyVarInfo
{
+ const VarDecl* varDecl;
std::string fieldName;
std::string fieldType;
std::string sourceLocation;
@@ -196,25 +179,36 @@ void UnusedVarsGlobal::run()
{
TraverseDecl(compiler.getASTContext().getTranslationUnitDecl());
- // dump all our output in one write call - this is to try and limit IO "crosstalk" between multiple processes
- // writing to the same logfile
- std::string output;
- for (const MyVarInfo& s : readFromSet)
- output += "read:\t" + s.sourceLocation + "\t" + s.fieldName + "\n";
- for (const MyVarInfo& s : writeToSet)
- output += "write:\t" + s.sourceLocation + "\t" + s.fieldName + "\n";
- for (const MyVarInfo& s : definitionSet)
- output
- += "definition:\t" + s.fieldName + "\t" + s.fieldType + "\t" + s.sourceLocation + "\n";
- std::ofstream myfile;
- myfile.open(WORKDIR "/loplugin.unusedvarsglobal.log", std::ios::app | std::ios::out);
- myfile << output;
- myfile.close();
+ if (!isUnitTestMode())
+ {
+ // dump all our output in one write call - this is to try and limit IO "crosstalk" between multiple processes
+ // writing to the same logfile
+ std::string output;
+ for (const MyVarInfo& s : readFromSet)
+ output += "read:\t" + s.sourceLocation + "\t" + s.fieldName + "\n";
+ for (const MyVarInfo& s : writeToSet)
+ output += "write:\t" + s.sourceLocation + "\t" + s.fieldName + "\n";
+ for (const MyVarInfo& s : definitionSet)
+ output += "definition:\t" + s.fieldName + "\t" + s.fieldType + "\t" + s.sourceLocation
+ + "\n";
+ std::ofstream myfile;
+ myfile.open(WORKDIR "/loplugin.unusedvarsglobal.log", std::ios::app | std::ios::out);
+ myfile << output;
+ myfile.close();
+ }
+ else
+ {
+ for (const MyVarInfo& s : readFromSet)
+ report(DiagnosticsEngine::Warning, "read", compat::getBeginLoc(s.varDecl));
+ for (const MyVarInfo& s : writeToSet)
+ report(DiagnosticsEngine::Warning, "write", compat::getBeginLoc(s.varDecl));
+ }
}
MyVarInfo UnusedVarsGlobal::niceName(const VarDecl* varDecl)
{
MyVarInfo aInfo;
+ aInfo.varDecl = varDecl;
aInfo.fieldName = varDecl->getNameAsString();
// sometimes the name (if it's an anonymous thing) contains the full path of the build folder, which we don't need
@@ -241,9 +235,7 @@ bool UnusedVarsGlobal::VisitVarDecl(const VarDecl* varDecl)
varDecl = varDecl->getCanonicalDecl();
if (isa<ParmVarDecl>(varDecl))
return true;
- if (varDecl->isConstexpr())
- return true;
- if (varDecl->isExceptionVariable())
+ if (!varDecl->hasGlobalStorage())
return true;
if (!varDecl->getLocation().isValid() || ignoreLocation(varDecl))
return true;
@@ -251,6 +243,17 @@ bool UnusedVarsGlobal::VisitVarDecl(const VarDecl* varDecl)
if (isInUnoIncludeFile(compiler.getSourceManager().getSpellingLoc(varDecl->getLocation())))
return true;
+ /**
+ If we have
+ const size_t NB_PRODUCTS = 3;
+ int DefaultProductDir[NB_PRODUCTS] = { 3, 3, 3 };
+ clang will inline the constant "3" and never tell us that we are reading from NB_PRODUCTS,
+ so just ignore integer constants.
+ */
+ auto varType = varDecl->getType();
+ if (varType.isConstQualified() && varType->isIntegerType())
+ return true;
+
auto initExpr = varDecl->getAnyInitializer();
if (initExpr && !isSomeKindOfZero(initExpr))
writeToSet.insert(niceName(varDecl));
@@ -267,9 +270,7 @@ bool UnusedVarsGlobal::VisitDeclRefExpr(const DeclRefExpr* declRefExpr)
return true;
if (isa<ParmVarDecl>(varDecl))
return true;
- if (varDecl->isConstexpr())
- return true;
- if (varDecl->isExceptionVariable())
+ if (!varDecl->hasGlobalStorage())
return true;
varDecl = varDecl->getCanonicalDecl();
if (!varDecl->getLocation().isValid() || ignoreLocation(varDecl))
diff --git a/compilerplugins/clang/unusedvarsglobal.untouched.results b/compilerplugins/clang/unusedvarsglobal.untouched.results
index f8fcbf0f32a7..cdc7a6e89477 100644
--- a/compilerplugins/clang/unusedvarsglobal.untouched.results
+++ b/compilerplugins/clang/unusedvarsglobal.untouched.results
@@ -1,280 +1,38 @@
-basic/source/classes/sbxmod.cxx:1714
- (anonymous namespace)::ErrorHdlResetter aErrHdl
canvas/workben/canvasdemo.cxx:672
(anonymous namespace)::DemoApp aApp
-chart2/source/view/main/DrawModelWrapper.cxx:82
- E3dObjFactory aObjFactory
connectivity/source/drivers/evoab2/EApi.h:52
gconstpointer (*)(EContact *, EContactField) e_contact_get_const
-connectivity/source/drivers/postgresql/pq_baseresultset.hxx:52
- sal_Int32 BASERESULTSET_CURSOR_NAME
-connectivity/source/drivers/postgresql/pq_preparedstatement.hxx:55
- sal_Int32 PREPARED_STATEMENT_CURSOR_NAME
-connectivity/source/drivers/postgresql/pq_statement.hxx:53
- sal_Int32 STATEMENT_CURSOR_NAME
cppu/source/uno/check.cxx:315
(anonymous namespace)::BinaryCompatible_Impl aTest
-dbaccess/source/filter/xml/xmlfilter.cxx:230
- dbaxml::(anonymous namespace)::FocusWindowWaitGuard aWindowFocusGuard
-dbaccess/source/ui/inc/TypeInfo.hxx:31
- sal_uInt16 TYPE_UNKNOWN
-desktop/source/app/sofficemain.cxx:71
- desktop::Desktop aDesktop
-desktop/source/splash/unxsplash.hxx:33
- desktop::UnxSplashScreen * m_pINSTANCE
-desktop/source/splash/unxsplash.hxx:35
- osl::Mutex m_aMutex
-desktop/unx/source/splashx.c:301
- uint32_t tmp
-desktop/unx/source/splashx.c:315
- uint32_t tmp
-desktop/unx/source/splashx.c:334
- uint32_t tmp
-desktop/unx/source/splashx.c:343
- uint32_t tmp
-drawinglayer/source/tools/emfppen.hxx:31
- sal_uInt32 EmfPlusLineJoinTypeMiter
-drawinglayer/source/tools/emfppen.hxx:36
- sal_Int32 EmfPlusLineStyleSolid
-extensions/source/scanner/sane.cxx:712
- int __d0
-extensions/source/scanner/sane.cxx:712
- int __d1
-filter/source/pdf/pdffilter.cxx:222
- (anonymous namespace)::FocusWindowWaitCursor aCur
framework/source/services/ContextChangeEventMultiplexer.cxx:381
framework::(anonymous namespace)::Hook g_hook
-framework/source/uiconfiguration/windowstateconfiguration.cxx:63
- sal_Int16 PROPERTY_LOCKED
hwpfilter/source/nodes.h:92
int count
-i18nlangtag/source/languagetag/languagetag.cxx:848
- Runner aRunner
-include/editeng/flditem.hxx:43
- sal_Int32 UNKNOWN_FIELD
-include/oox/helper/helper.hxx:87
- sal_Int16 API_LINE_SOLID
-include/oox/helper/helper.hxx:92
- sal_Int16 API_LINE_NONE
-include/oox/helper/helper.hxx:98
- sal_Int16 API_ESCAPE_NONE
-include/oox/ole/axcontrol.hxx:123
- sal_Int32 AX_PICALIGN_TOPLEFT
-include/vcl/EnumContext.hxx:139
- sal_Int32 OptimalMatch
-lotuswordpro/source/filter/LotusWordProImportFilter.cxx:74
- uno::Reference<XDocumentHandler> xHandler
-lotuswordpro/source/filter/lwpsilverbullet.hxx:71
- sal_uInt16 NUMCHAR_none
-oox/source/dump/oledumper.cxx:163
- sal_uInt16 OLEPROP_TYPE_SIMPLE
-oox/source/ole/olehelper.cxx:67
- sal_uInt32 OLE_COLORTYPE_CLIENT
pyuno/source/loader/pyuno_loader.cxx:240
pyuno_loader::(anonymous namespace)::PythonInit s_Init
-pyuno/source/module/pyuno.cxx:1505
- pyuno::Runtime runtime
pyuno/source/module/pyuno_gc.cxx:45
pyuno::(anonymous namespace)::StaticDestructorGuard guard
-pyuno/source/module/pyuno_struct.cxx:251
- pyuno::Runtime runtime
sal/osl/all/utility.cxx:45
osl::(anonymous namespace)::OGlobalTimer aGlobalTimer
sal/qa/osl/file/osl_File.cxx:5199
(anonymous namespace)::GlobalObject theGlobalObject
-sal/qa/osl/pipe/osl_Pipe.cxx:875
- osl_StreamPipe::(anonymous namespace)::Pipe_DataSink_Thread myDataSinkThread
-sal/qa/OStringBuffer/rtl_String_Const.h:118
- sal_Int32 kTestStr25Len
sal/rtl/cmdargs.cxx:46
(anonymous namespace)::ArgHolder argHolder
-salhelper/qa/test_api.cxx:171
- salhelper::ORealDynamicLoader * p
-sc/qa/unit/tiledrendering/tiledrendering.cxx:612
- (anonymous namespace)::ViewCallback aView2
-sc/qa/unit/tiledrendering/tiledrendering.cxx:651
- (anonymous namespace)::ViewCallback aView2
-sc/qa/unit/tiledrendering/tiledrendering.cxx:746
- (anonymous namespace)::ViewCallback aView1
-sc/qa/unit/tiledrendering/tiledrendering.cxx:758
- (anonymous namespace)::ViewCallback aView2
-sc/qa/unit/tiledrendering/tiledrendering.cxx:780
- (anonymous namespace)::ViewCallback aView1
-sc/qa/unit/tiledrendering/tiledrendering.cxx:1152
- (anonymous namespace)::ViewCallback aView1
-sc/qa/unit/tiledrendering/tiledrendering.cxx:1158
- (anonymous namespace)::ViewCallback aView2
-sc/qa/unit/tiledrendering/tiledrendering.cxx:1216
- (anonymous namespace)::ViewCallback aView1
-sc/qa/unit/tiledrendering/tiledrendering.cxx:1222
- (anonymous namespace)::ViewCallback aView2
-sc/qa/unit/ucalc_sort.cxx:1027
- SortRefNoUpdateSetter aUpdateSet
-sc/qa/unit/ucalc_sort.cxx:1336
- SortRefNoUpdateSetter aUpdateSet
-sc/qa/unit/ucalc_sort.cxx:1474
- SortRefNoUpdateSetter aUpdateSet
-sc/qa/unit/ucalc_sort.cxx:1674
- SortRefNoUpdateSetter aUpdateSet
-sc/source/filter/inc/biffhelper.hxx:401
- sal_uInt16 BIFF2_ID_DIMENSION
-sc/source/filter/inc/biffhelper.hxx:539
- sal_uInt16 BIFF_ID_OBJEND
-sc/source/filter/inc/biffhelper.hxx:575
- sal_uInt8 BIFF_DATATYPE_EMPTY
-sc/source/filter/inc/biffhelper.hxx:581
- sal_uInt8 BIFF_BOOLERR_BOOL
-sc/source/filter/inc/defnamesbuffer.hxx:37
- sal_Unicode BIFF_DEFNAME_CONSOLIDATEAREA
-sc/source/filter/inc/formulabase.hxx:61
- sal_uInt8 BIFF_TOKID_NONE
-sc/source/filter/inc/formulabase.hxx:96
- sal_uInt8 BIFF_TOKID_ARRAY
-sc/source/filter/inc/formulabase.hxx:121
- sal_uInt8 BIFF_TOK_ARRAY_DOUBLE
-sc/source/filter/inc/formulabase.hxx:139
- sal_uInt8 BIFF_TOK_ATTR_SPACE_SP
-sc/source/filter/inc/xlchart.hxx:198
- sal_uInt16 EXC_CHFRBLOCK_FRAME_STANDARD
-sc/source/filter/inc/xlchart.hxx:227
- sal_uInt16 EXC_CHSERIES_DATE
-sc/source/filter/inc/xlchart.hxx:335
- sal_uInt8 EXC_CHLEGEND_CLOSE
-sc/source/filter/inc/xlchart.hxx:386
- sal_uInt16 EXC_CHCHARTLINE_DROP
-sc/source/filter/inc/xlchart.hxx:453
- sal_uInt16 EXC_CHDEFTEXT_TEXTLABEL
-sc/source/filter/inc/xlchart.hxx:641
- sal_uInt16 EXC_CHFRAMEPOS_POINTS
-sc/source/filter/inc/xlchart.hxx:682
- sal_uInt8 EXC_CHSERERR_END_BLANK
-sc/source/filter/inc/xlconst.hxx:127
- sal_Int32 EXC_RK_DBL
-sc/source/filter/inc/xlcontent.hxx:40
- sal_uInt16 EXC_FILEPASS_BIFF5
-sc/source/filter/inc/xlescher.hxx:99
- sal_uInt8 EXC_OBJ_ARROW_NONE
-sc/source/filter/inc/xlescher.hxx:105
- sal_uInt8 EXC_OBJ_ARROW_NARROW
-sc/source/filter/inc/xlescher.hxx:197
- sal_uInt16 EXC_OBJ_DROPDOWN_LISTBOX
-sc/source/filter/inc/xlname.hxx:48
- sal_Unicode EXC_BUILTIN_CONSOLIDATEAREA
-sc/source/filter/oox/externallinkbuffer.cxx:52
- sal_uInt16 BIFF12_EXTERNALBOOK_BOOK
-sc/source/filter/oox/stylesbuffer.cxx:135
- sal_uInt8 BIFF12_COLOR_AUTO
-sc/source/filter/oox/stylesbuffer.cxx:163
- sal_uInt16 BIFF12_DXF_FILL_PATTERN
-sc/source/filter/oox/stylesbuffer.cxx:203
- sal_uInt8 BIFF_FONTUNDERL_NONE
-sc/source/ui/vba/excelvbahelper.cxx:160
- ooo::vba::excel::(anonymous namespace)::PasteCellsWarningReseter resetWarningBox
-sc/source/ui/vba/excelvbahelper.cxx:211
- ooo::vba::excel::(anonymous namespace)::PasteCellsWarningReseter resetWarningBox
-sd/qa/unit/tiledrendering/tiledrendering.cxx:1462
- (anonymous namespace)::ViewCallback aView1
-sd/qa/unit/tiledrendering/tiledrendering.cxx:1915
- (anonymous namespace)::ViewCallback aView1
-sd/qa/unit/tiledrendering/tiledrendering.cxx:1923
- (anonymous namespace)::ViewCallback aView2
-sd/source/ui/animations/CustomAnimationDialog.hxx:29
- sal_Int32 nHandleSound
-sd/source/ui/inc/MasterPageObserver.hxx:79
- osl::Mutex maMutex
-sd/source/ui/sidebar/PanelFactory.cxx:47
- Reference<lang::XEventListener> mxControllerDisposeListener
-sfx2/source/appl/shutdownicon.cxx:663
- sal_Int32 PROPHANDLE_TERMINATEVETOSTATE
-sfx2/source/doc/objstor.cxx:573
- FontLockGuard aFontLockGuard
-sfx2/source/view/lokhelper.cxx:127
- (anonymous namespace)::DisableCallbacks dc
soltools/cpp/cpp.h:239
int Lflag
soltools/mkdepend/parse.c:40
symhash * maininclist
soltools/mkdepend/pr.c:34
int width
-starmath/source/mathmlimport.cxx:2717
- uno::Reference<beans::XPropertySet> xInfoSet
-svl/qa/unit/items/test_IndexedStyleSheets.cxx:74
- svl::IndexedStyleSheets iss
-svtools/source/control/inettbc.cxx:87
- osl::Mutex * pDirMutex
-svx/source/gallery2/galctrl.cxx:244
- GalleryProgress aProgress
svx/source/gengal/gengal.cxx:323
(anonymous namespace)::GalApp aGalApp
-sw/inc/calc.hxx:88
- char [] sCalc_Tdif
-sw/inc/poolfmt.hxx:64
- sal_uInt16 POOL_FMT
-sw/inc/swtypes.hxx:101
- SwPathFinder * pPathFinder
-sw/inc/viewsh.hxx:167
- vcl::DeleteOnDeinit<VclPtr<vcl::Window> > mpCareWindow
-sw/qa/extras/ooxmlexport/ooxmlexport8.cxx:405
- BorderTest borderTest
-sw/qa/extras/rtfexport/rtfexport2.cxx:548
- BorderTest borderTest
-sw/qa/extras/ww8export/ww8export.cxx:266
- BorderTest borderTest
-sw/source/core/layout/paintfrm.cxx:3922
- (anonymous namespace)::BorderLinesGuard blg
-sw/source/core/text/frmform.cxx:1801
- (anonymous namespace)::FormatLevel aLevel
-sw/source/core/view/viewsh.cxx:706
- SwSaveSetLRUOfst aSaveLRU
-sw/source/core/view/viewsh.cxx:983
- SwSaveSetLRUOfst aSaveLRU
-sw/source/filter/basflt/shellio.cxx:733
- SwPauseThreadStarting aPauseThreadStarting
-sw/source/filter/html/swhtml.cxx:5596
- (anonymous namespace)::FontCacheGuard aFontCacheGuard
-sw/source/filter/ww8/rtfsdrexport.cxx:489
- char *[] pShapeTypes
-sw/source/filter/ww8/ww8par.cxx:6264
- (anonymous namespace)::FontCacheGuard aFontCacheGuard
-sw/source/filter/xml/xmlexp.cxx:98
- SwPauseThreadStarting aPauseThreadStarting
-sw/source/uibase/inc/initui.hxx:33
- SwThesaurus * pThes
-sw/source/uibase/lingu/hhcwrp.cxx:123
- (anonymous namespace)::SwKeepConversionDirectionStateContext aContext
-sw/source/uibase/sidebar/WriterInspectorTextPanel.cxx:326
- svx::sidebar::TreeNode aChild
vcl/backendtest/VisualBackendTest.cxx:745
(anonymous namespace)::VisualBackendTestApp aApplication
-vcl/inc/driverblocklist.hxx:96
- uint64_t allDriverVersions
-vcl/qa/cppunit/BitmapScaleTest.cxx:288
- BitmapSymmetryCheck aBitmapSymmetryCheck
-vcl/source/outdev/font.cxx:156
- (anonymous namespace)::UpdateFontsGuard aUpdateFontsGuard
vcl/source/uipreviewer/previewer.cxx:113
(anonymous namespace)::UIPreviewApp aApp
-vcl/unx/generic/app/saldata.cxx:314
- int __d0
-vcl/unx/generic/app/saldata.cxx:314
- int __d1
-vcl/unx/generic/app/saldata.cxx:315
- int __d1
-vcl/unx/generic/app/saldata.cxx:315
- int __d0
vcl/workben/icontest.cxx:216
(anonymous namespace)::IconTestApp aApp
vcl/workben/mtfdemo.cxx:162
(anonymous namespace)::DemoMtfApp aApp
vcl/workben/vcldemo.cxx:2445
(anonymous namespace)::DemoApp aApp
-writerfilter/source/dmapper/DomainMapperTableHandler.cxx:825
- std::optional<PropertyMap::Property> oRowCellBorder
-writerfilter/source/dmapper/TagLogger.hxx:35
- tools::SvRef<TagLogger> instance
-xmloff/inc/PageMasterStyleMap.hxx:193
- XMLPropertyMapEntry [] aXMLPageMasterHeaderImportStyleMap
-xmloff/inc/PageMasterStyleMap.hxx:194
- XMLPropertyMapEntry [] aXMLPageMasterFooterImportStyleMap
-xmloff/inc/XMLChartPropertySetMapper.hxx:28
- XMLPropertyMapEntry [] aXMLChartPropMap
diff --git a/compilerplugins/clang/unusedvarsglobal.writeonly.results b/compilerplugins/clang/unusedvarsglobal.writeonly.results
new file mode 100644
index 000000000000..92413e328e2c
--- /dev/null
+++ b/compilerplugins/clang/unusedvarsglobal.writeonly.results
@@ -0,0 +1,392 @@
+basctl/source/basicide/localizationmgr.cxx:52
+ rtl::OUStringLiteral aSemi
+chart2/source/controller/itemsetwrapper/SchWhichPairs.hxx:149
+ sal_uInt16 [7] nAreaWhichPairs
+chart2/source/controller/itemsetwrapper/SchWhichPairs.hxx:157
+ sal_uInt16 [7] nTextWhichPairs
+chart2/source/controller/itemsetwrapper/SchWhichPairs.hxx:164
+ sal_uInt16 [7] nTextOrientWhichPairs
+chart2/source/controller/itemsetwrapper/SchWhichPairs.hxx:199
+ sal_uInt16 [5] nFillPropertyWhichPairs
+chart2/source/controller/itemsetwrapper/SchWhichPairs.hxx:214
+ sal_uInt16 [9] nChartStyleWhichPairs
+chart2/source/view/inc/ViewDefines.hxx:30
+ double ZDIRECTION
+chart2/source/view/main/ChartView.cxx:2437
+ char * envChartDummyFactory
+connectivity/source/drivers/hsqldb/HDriver.cxx:345
+ Reference<class com::sun::star::frame::XTerminateListener> s_xTerminateListener
+connectivity/source/drivers/mysqlc/mysqlc_databasemetadata.cxx:38
+ std::string wild
+cppuhelper/source/servicemanager.cxx:1977
+ std::vector<css::uno::Mapping> maMaps
+cui/source/inc/cuitabarea.hxx:491
+ sal_uInt16 [] pBitmapRanges
+dbaccess/source/ui/browser/genericcontroller.cxx:465
+ sal_Int32 s_nRecursions
+dbaccess/source/ui/inc/TokenWriter.hxx:142
+ sal_Int16 [7] nDefaultFontSize
+dbaccess/source/ui/inc/TokenWriter.hxx:144
+ sal_Int16 [7] nFontSize
+desktop/source/app/langselect.cxx:50
+ rtl::OUString foundLocale
+hwpfilter/source/grammar.cxx:399
+ int yynerrs
+hwpfilter/source/hbox.h:67
+ int boxCount
+hwpfilter/source/ksc5601.h:184
+ hchar [4888] ksc5601_2uni_page4a
+hwpfilter/source/nodes.h:98
+ std::vector<std::unique_ptr<Node> > nodelist
+i18npool/inc/calendar_hijri.hxx:46
+ double SynMonth
+i18npool/inc/calendar_hijri.hxx:56
+ double SA_TimeZone
+i18npool/inc/calendar_hijri.hxx:59
+ double EveningPeriod
+i18npool/inc/calendar_hijri.hxx:62
+ sal_Int32 [] LeapYear
+idlc/source/idlccompile.cxx:51
+ int yydebug
+include/svx/def3d.hxx:26
+ double EPSILON
+include/svx/xoutbmp.hxx:57
+ GraphicFilter * pGrfFilter
+include/vcl/animate/Animation.hxx:96
+ sal_uLong mnAnimCount
+libreofficekit/qa/gtktiledviewer/gtv-comments-sidebar.cxx:31
+ gpointer gtv_comments_sidebar_parent_class
+libreofficekit/qa/gtktiledviewer/gtv-lok-dialog.cxx:61
+ gpointer gtv_lok_dialog_parent_class
+lotuswordpro/inc/lwptools.hxx:76
+ double INCHT_PER_CM
+sal/osl/unx/system.cxx:164
+ void *[3] dummy
+sal/qa/osl/condition/osl_Condition_Const.h:41
+ rtl::OUString aTestCon
+sal/qa/osl/condition/osl_Condition_Const.h:43
+ char [17] pTestString
+sal/qa/osl/file/osl_File_Const.h:60
+ char [11] pBuffer_Number
+sal/qa/osl/file/osl_File_Const.h:61
+ char [1] pBuffer_Blank
+sal/qa/osl/file/osl_File_Const.h:126
+ rtl::OUString aCanURL2
+sal/qa/osl/file/osl_File_Const.h:128
+ rtl::OUString aCanURL3
+sal/qa/osl/file/osl_File_Const.h:141
+ rtl::OUString aRelURL1
+sal/qa/osl/file/osl_File_Const.h:142
+ rtl::OUString aRelURL2
+sal/qa/osl/file/osl_File_Const.h:143
+ rtl::OUString aRelURL3
+sal/qa/osl/file/osl_File_Const.h:157
+ rtl::OUString aSysPathLnk
+sal/qa/osl/file/osl_File_Const.h:158
+ rtl::OUString aFifoSys
+sal/qa/osl/file/osl_File_Const.h:165
+ rtl::OUString aTypeURL1
+sal/qa/osl/file/osl_File_Const.h:166
+ rtl::OUString aTypeURL2
+sal/qa/osl/file/osl_File_Const.h:167
+ rtl::OUString aTypeURL3
+sal/qa/osl/file/osl_File_Const.h:182
+ rtl::OUString aVolURL2
+sal/qa/osl/file/osl_File_Const.h:184
+ rtl::OUString aVolURL3
+sal/qa/osl/file/osl_File_Const.h:185
+ rtl::OUString aVolURL4
+sal/qa/osl/file/osl_File_Const.h:186
+ rtl::OUString aVolURL5
+sal/qa/osl/file/osl_File_Const.h:187
+ rtl::OUString aVolURL6
+sal/qa/osl/security/osl_Security_Const.h:48
+ char [17] pTestString
+sal/qa/OStringBuffer/rtl_String_Const.h:275
+ sal_Unicode [3] uTestStr31
+sal/qa/OStringBuffer/rtl_String_Const.h:276
+ sal_Unicode [4] uTestStr32
+sal/qa/OStringBuffer/rtl_String_Const.h:297
+ sal_Int32 [5] kInt32MaxNums
+sal/qa/OStringBuffer/rtl_String_Const.h:306
+ sal_Int64 [7] kInt64MaxNums
+sal/qa/OStringBuffer/rtl_String_Const.h:335
+ double [24] expValDouble
+sal/qa/OStringBuffer/rtl_String_Const.h:345
+ float [22] expValFloat
+sal/qa/OStringBuffer/rtl_String_Const.h:355
+ sal_Unicode [15] expValChar
+sal/qa/OStringBuffer/rtl_String_Const.h:364
+ sal_Unicode [6] input1Default
+sal/qa/OStringBuffer/rtl_String_Const.h:368
+ sal_Int32 [6] input2Default
+sal/qa/OStringBuffer/rtl_String_Const.h:372
+ sal_Int32 [6] expValDefault
+sal/qa/OStringBuffer/rtl_String_Const.h:378
+ sal_Unicode [10] input1Normal
+sal/qa/OStringBuffer/rtl_String_Const.h:382
+ sal_Int32 [10] input2Normal
+sal/qa/OStringBuffer/rtl_String_Const.h:386
+ sal_Int32 [10] expValNormal
+sal/qa/OStringBuffer/rtl_String_Const.h:392
+ sal_Unicode [5] input1lastDefault
+sal/qa/OStringBuffer/rtl_String_Const.h:396
+ sal_Int32 [5] input2lastDefault
+sal/qa/OStringBuffer/rtl_String_Const.h:400
+ sal_Int32 [5] expVallastDefault
+sal/qa/OStringBuffer/rtl_String_Const.h:406
+ sal_Unicode [8] input1lastNormal
+sal/qa/OStringBuffer/rtl_String_Const.h:410
+ sal_Int32 [8] input2lastNormal
+sal/qa/OStringBuffer/rtl_String_Const.h:414
+ sal_Int32 [8] expVallastNormal
+sal/qa/OStringBuffer/rtl_String_Const.h:420
+ sal_Int32 [6] input2StrDefault
+sal/qa/OStringBuffer/rtl_String_Const.h:424
+ sal_Int32 [6] expValStrDefault
+sal/qa/OStringBuffer/rtl_String_Const.h:430
+ sal_Int32 [9] input2StrNormal
+sal/qa/OStringBuffer/rtl_String_Const.h:434
+ sal_Int32 [9] expValStrNormal
+sal/qa/OStringBuffer/rtl_String_Const.h:440
+ sal_Int32 [6] input2StrLastDefault
+sal/qa/OStringBuffer/rtl_String_Const.h:444
+ sal_Int32 [6] expValStrLastDefault
+sal/qa/OStringBuffer/rtl_String_Const.h:450
+ sal_Int32 [12] input2StrLastNormal
+sal/qa/OStringBuffer/rtl_String_Const.h:454
+ sal_Int32 [12] expValStrLastNormal
+sal/qa/rtl/strings/test_oustring_stringliterals.cxx:47
+ rtlunittest::OUStringLiteral dummy
+sc/inc/global.hxx:514
+ std::unique_ptr<SvxBrushItem> xEmbeddedBrushItem
+sc/source/core/data/drwlayer.cxx:80
+ E3dObjFactory * pF3d
+sc/source/core/opencl/opinlinefun_finacial.cxx:43
+ std::string GetPMTDecl
+sc/source/core/opencl/opinlinefun_finacial.cxx:46
+ std::string GetPMT
+sc/source/core/opencl/opinlinefun_finacial.cxx:309
+ std::string ScaDate2Decl
+sc/source/core/opencl/opinlinefun_finacial.cxx:313
+ std::string ScaDate2
+sc/source/filter/inc/imp_op.hxx:88
+ double fExcToTwips
+sc/source/filter/inc/xlstream.hxx:33
+ ErrCode EXC_ENCR_ERROR_WRONG_PASS
+sc/source/ui/inc/content.hxx:63
+ _Bool bIsInDrag
+sc/source/ui/inc/viewfunc.hxx:376
+ _Bool bPasteIsDrop
+sd/source/ui/inc/framework/FrameworkHelper.hxx:64
+ rtl::OUString msSidebarPaneURL
+sd/source/ui/inc/framework/FrameworkHelper.hxx:83
+ rtl::OUString msAllMasterPagesTaskPanelURL
+sd/source/ui/inc/framework/FrameworkHelper.hxx:84
+ rtl::OUString msRecentMasterPagesTaskPanelURL
+sd/source/ui/inc/framework/FrameworkHelper.hxx:85
+ rtl::OUString msUsedMasterPagesTaskPanelURL
+sd/source/ui/inc/framework/FrameworkHelper.hxx:86
+ rtl::OUString msLayoutTaskPanelURL
+sd/source/ui/inc/framework/FrameworkHelper.hxx:87
+ rtl::OUString msTableDesignPanelURL
+sd/source/ui/inc/framework/FrameworkHelper.hxx:88
+ rtl::OUString msCustomAnimationTaskPanelURL
+sd/source/ui/inc/framework/FrameworkHelper.hxx:89
+ rtl::OUString msSlideTransitionTaskPanelURL
+sd/source/ui/inc/framework/FrameworkHelper.hxx:101
+ rtl::OUStringLiteral msModuleControllerService
+sd/source/ui/inc/framework/FrameworkHelper.hxx:102
+ rtl::OUStringLiteral msConfigurationControllerService
+sd/source/ui/inc/unokywds.hxx:26
+ char [6] sUNO_PseudoSheet_Title
+sd/source/ui/inc/unokywds.hxx:27
+ char [9] sUNO_PseudoSheet_SubTitle
+sd/source/ui/inc/unokywds.hxx:29
+ char [18] sUNO_PseudoSheet_Background_Objects
+sd/source/ui/inc/unokywds.hxx:30
+ char [6] sUNO_PseudoSheet_Notes
+sd/source/ui/inc/unokywds.hxx:31
+ char [9] sUNO_PseudoSheet_Outline1
+sd/source/ui/inc/unokywds.hxx:32
+ char [9] sUNO_PseudoSheet_Outline2
+sd/source/ui/inc/unokywds.hxx:33
+ char [9] sUNO_PseudoSheet_Outline3
+sd/source/ui/inc/unokywds.hxx:34
+ char [9] sUNO_PseudoSheet_Outline4
+sd/source/ui/inc/unokywds.hxx:35
+ char [9] sUNO_PseudoSheet_Outline5
+sd/source/ui/inc/unokywds.hxx:36
+ char [9] sUNO_PseudoSheet_Outline6
+sd/source/ui/inc/unokywds.hxx:37
+ char [9] sUNO_PseudoSheet_Outline7
+sd/source/ui/inc/unokywds.hxx:38
+ char [9] sUNO_PseudoSheet_Outline8
+sd/source/ui/inc/unokywds.hxx:39
+ char [9] sUNO_PseudoSheet_Outline9
+sd/source/ui/inc/unokywds.hxx:49
+ char [6] sUNO_shape_style
+sd/source/ui/inc/unokywds.hxx:50
+ char [10] sUNO_shape_layername
+sd/source/ui/inc/unokywds.hxx:51
+ char [7] sUNO_shape_zorder
+sd/source/ui/inc/unokywds.hxx:54
+ char [31] sUNO_Service_StyleFamily
+sd/source/ui/inc/unokywds.hxx:55
+ char [33] sUNO_Service_StyleFamilies
+sd/source/ui/inc/unokywds.hxx:56
+ char [25] sUNO_Service_Style
+sd/source/ui/inc/unokywds.hxx:58
+ char [36] sUNO_Service_LineProperties
+sd/source/ui/inc/unokywds.hxx:59
+ char [39] sUNO_Service_ParagraphProperties
+sd/source/ui/inc/unokywds.hxx:60
+ char [39] sUNO_Service_CharacterProperties
+sd/source/ui/inc/unokywds.hxx:61
+ char [26] sUNO_Service_Text
+sd/source/ui/inc/unokywds.hxx:62
+ char [36] sUNO_Service_TextProperties
+sd/source/ui/inc/unokywds.hxx:63
+ char [38] sUNO_Service_ShadowProperties
+sd/source/ui/inc/unokywds.hxx:64
+ char [41] sUNO_Service_ConnectorProperties
+sd/source/ui/inc/unokywds.hxx:65
+ char [39] sUNO_Service_MeasureProperties
+sd/source/ui/inc/unokywds.hxx:67
+ char [40] sUNO_Service_GraphicObjectShape
+sd/source/ui/inc/unokywds.hxx:74
+ char [11] sUNO_Prop_Background
+sd/source/ui/inc/unokywds.hxx:78
+ char [7] sUNO_Prop_Aspect
+sd/source/ui/inc/unokywds.hxx:100
+ char [12] sUNO_View_IsQuickEdit
+sd/source/ui/inc/unokywds.hxx:103
+ char [15] sUNO_View_IsDragWithCopy
+sd/source/ui/inc/unokywds.hxx:105
+ char [9] sUNO_View_DrawMode
+sd/source/ui/inc/unokywds.hxx:106
+ char [16] sUNO_View_PreviewDrawMode
+sd/source/ui/inc/unokywds.hxx:107
+ char [24] sUNO_View_IsShowPreviewInPageMode
+sd/source/ui/inc/unokywds.hxx:108
+ char [30] sUNO_View_IsShowPreviewInMasterPageMode
+sd/source/ui/inc/unokywds.hxx:109
+ char [28] sUNO_View_SetShowPreviewInOutlineMode
+sd/source/ui/inc/unokywds.hxx:114
+ char [8] sUNO_View_VisArea
+sd/source/ui/inc/unokywds.hxx:123
+ char [19] sUNO_View_IsSnapLinesVisible
+sd/source/ui/inc/unokywds.hxx:124
+ char [14] sUNO_View_IsDragStripes
+sd/source/ui/inc/unokywds.hxx:127
+ char [23] sUNO_View_IsMarkedHitMovesAlways
+sd/source/ui/inc/unokywds.hxx:130
+ char [12] sUNO_View_IsLineDraft
+sd/source/ui/inc/unokywds.hxx:131
+ char [12] sUNO_View_IsFillDraft
+sd/source/ui/inc/unokywds.hxx:132
+ char [12] sUNO_View_IsTextDraft
+sd/source/ui/inc/unokywds.hxx:133
+ char [12] sUNO_View_IsGrafDraft
+sdext/source/presenter/PresenterHelper.hxx:34
+ rtl::OUString msCenterPaneURL
+sdext/source/presenter/PresenterHelper.hxx:38
+ rtl::OUString msPresenterScreenURL
+sdext/source/presenter/PresenterHelper.hxx:39
+ rtl::OUString msSlideSorterURL
+sdext/source/presenter/PresenterPaneFactory.hxx:57
+ rtl::OUStringLiteral msHelpPaneURL
+sdext/source/presenter/PresenterPaneFactory.hxx:58
+ rtl::OUStringLiteral msOverlayPaneURL
+sfx2/source/appl/appdata.cxx:48
+ BasicDLL * pBasic
+sfx2/source/appl/shutdownicon.hxx:107
+ _Bool bModalMode
+soltools/cpp/cpp.h:246
+ Nlist * kwdefined
+svl/source/items/style.cxx:61
+ (anonymous namespace)::DbgStyleSheetReferences aDbgStyleSheetReferences
+svtools/source/config/printoptions.cxx:60
+ SvtPrintOptions_Impl * pPrinterOptionsDataContainer
+svtools/source/config/printoptions.cxx:61
+ SvtPrintOptions_Impl * pPrintFileOptionsDataContainer
+sw/source/core/inc/swfont.hxx:989
+ SvStatistics g_SvStat
+sw/source/filter/html/css1kywd.hxx:27
+ char *const sCSS1_import
+sw/source/filter/html/css1kywd.hxx:31
+ char *const sCSS1_important
+sw/source/filter/html/css1kywd.hxx:42
+ char *const sCSS1_rgb
+sw/source/filter/html/css1kywd.hxx:50
+ char *const sCSS1_UNIT_em
+sw/source/filter/html/css1kywd.hxx:51
+ char *const sCSS1_UNIT_ex
+sw/source/filter/html/css1kywd.hxx:89
+ char *const sCSS1_PV_lighter
+sw/source/filter/html/css1kywd.hxx:90
+ char *const sCSS1_PV_bolder
+sw/source/filter/html/css1kywd.hxx:94
+ char *const sCSS1_PV_xx_small
+sw/source/filter/html/css1kywd.hxx:95
+ char *const sCSS1_PV_x_small
+sw/source/filter/html/css1kywd.hxx:96
+ char *const sCSS1_PV_small
+sw/source/filter/html/css1kywd.hxx:97
+ char *const sCSS1_PV_medium
+sw/source/filter/html/css1kywd.hxx:98
+ char *const sCSS1_PV_large
+sw/source/filter/html/css1kywd.hxx:99
+ char *const sCSS1_PV_x_large
+sw/source/filter/html/css1kywd.hxx:100
+ char *const sCSS1_PV_xx_large
+sw/source/filter/html/css1kywd.hxx:102
+ char *const sCSS1_PV_larger
+sw/source/filter/html/css1kywd.hxx:103
+ char *const sCSS1_PV_smaller
+sw/source/filter/html/css1kywd.hxx:117
+ char *const sCSS1_PV_repeat_x
+sw/source/filter/html/css1kywd.hxx:118
+ char *const sCSS1_PV_repeat_y
+sw/source/filter/html/css1kywd.hxx:181
+ char *const sCSS1_PV_thin
+sw/source/filter/html/css1kywd.hxx:183
+ char *const sCSS1_PV_thick
+sw/source/filter/html/css1kywd.hxx:209
+ char *const sCSS1_PV_relative
+sw/source/filter/html/css1kywd.hxx:210
+ char *const sCSS1_PV_static
+sw/source/filter/html/css1kywd.hxx:237
+ char *const sCSS1_class_abs_pos
+sw/source/filter/ww8/ww8par6.cxx:1069
+ sal_uInt16 [2] nLef
+sw/source/filter/ww8/ww8par6.cxx:1070
+ sal_uInt16 [2] nRig
+sw/source/filter/ww8/ww8par6.cxx:1121
+ sal_uInt16 [2] nTop
+sw/source/filter/ww8/ww8par6.cxx:1122
+ sal_uInt16 [2] nBot
+sw/source/filter/ww8/ww8scan.hxx:50
+ char [8] aTextBox
+vcl/inc/unx/gtk/gtkgdi.hxx:166
+ GtkStyleContext * mpSpinEntryStyle
+vcl/qa/cppunit/timer.cxx:54
+ (anonymous namespace)::WatchDog * aWatchDog
+vcl/unx/gtk3/a11y/gtk3atkutil.cxx:508
+ (anonymous namespace)::WindowList g_aWindowList
+xmloff/source/chart/XMLSymbolImageContext.cxx:46
+ SvXMLTokenMapEntry [5] aSymbolImageAttrTokenMap
+xmloff/source/draw/sdpropls.hxx:40
+ XMLPropertyMapEntry [] aXMLSDPresPageProps_onlyHeadersFooter
+xmloff/source/style/DashStyle.cxx:58
+ SvXMLTokenMapEntry [9] aDashStyleAttrTokenMap
+xmloff/source/style/XMLBackgroundImageContext.cxx:174
+ SvXMLTokenMap aTokenMap
+xmloff/source/style/xmlstyle.cxx:62
+ SvXMLTokenMapEntry [16] aStyleStylesElemTokenMap
+xmloff/source/style/xmltabi.cxx:84
+ SvXMLTokenMap aTokenMap
+xmloff/source/text/txtdropi.cxx:65
+ SvXMLTokenMap aTokenMap
+xmloff/source/text/txtimp.cxx:414
+ SvXMLTokenMapEntry [9] aTextMasterPageElemTokenMap