compilerplugins/clang/virtualdead.cxx | 31 + compilerplugins/clang/virtualdead.py | 76 ++ compilerplugins/clang/virtualdead.results | 29 - compilerplugins/clang/virtualdead.unusedparams.results | 450 +++++++++++++++++ 4 files changed, 543 insertions(+), 43 deletions(-)
New commits: commit e8475b6343af23bc1ac2d722afd8df4d7615a7a8 Author: Noel Grandin <noel.gran...@collabora.co.uk> AuthorDate: Thu Oct 17 11:05:43 2019 +0200 Commit: Noel Grandin <noel.gran...@collabora.co.uk> CommitDate: Thu Oct 17 16:51:07 2019 +0200 loplugin:virtualdead look for virtual methods where a param is unused Change-Id: Ibadc2aa79a52082db16eff44c89ab30938838dd8 Reviewed-on: https://gerrit.libreoffice.org/80935 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.gran...@collabora.co.uk> diff --git a/compilerplugins/clang/virtualdead.cxx b/compilerplugins/clang/virtualdead.cxx index c2d804067d7b..330085b18781 100644 --- a/compilerplugins/clang/virtualdead.cxx +++ b/compilerplugins/clang/virtualdead.cxx @@ -43,9 +43,19 @@ bool operator<(const MyFuncInfo& lhs, const MyFuncInfo& rhs) { return std::tie(lhs.name, lhs.returnValue) < std::tie(rhs.name, rhs.returnValue); } +struct MyParamInfo +{ + std::string funcName; + std::string paramBitField; +}; +bool operator<(const MyParamInfo& lhs, const MyParamInfo& rhs) +{ + return std::tie(lhs.funcName, lhs.paramBitField) < std::tie(rhs.funcName, rhs.paramBitField); +} // try to limit the voluminous output a little static std::set<MyFuncInfo> definitionSet; +static std::set<MyParamInfo> paramUsedSet; class VirtualDead : public RecursiveASTVisitor<VirtualDead>, public loplugin::Plugin { @@ -64,6 +74,8 @@ public: std::string output; for (const MyFuncInfo& s : definitionSet) output += "virtual:\t" + s.name + "\t" + s.sourceLocation + "\t" + s.returnValue + "\n"; + for (const MyParamInfo& s : paramUsedSet) + output += "param:\t" + s.funcName + "\t" + s.paramBitField + "\n"; std::ofstream myfile; myfile.open(WORKDIR "/loplugin.virtualdead.log", std::ios::app | std::ios::out); myfile << output; @@ -77,7 +89,8 @@ public: private: std::string getCallValue(const Expr* arg); std::string toString(SourceLocation loc); - void markSuperclassMethods(const CXXMethodDecl* methodDecl, std::string returnValue); + void markSuperclassMethods(const CXXMethodDecl* methodDecl, const std::string& returnValue, + const std::string& paramBitField); }; std::string niceName(const CXXMethodDecl* cxxMethodDecl) @@ -142,18 +155,28 @@ bool VirtualDead::VisitCXXMethodDecl(const CXXMethodDecl* methodDecl) else returnValue = "empty"; - markSuperclassMethods(methodDecl, returnValue); + std::string paramBitfield; + for (auto it = methodDecl->param_begin(); it != methodDecl->param_end(); ++it) + { + auto param = *it; + paramBitfield += param->getName().empty() ? "0" : "1"; + } + + markSuperclassMethods(methodDecl, returnValue, paramBitfield); return true; } -void VirtualDead::markSuperclassMethods(const CXXMethodDecl* methodDecl, std::string returnValue) +void VirtualDead::markSuperclassMethods(const CXXMethodDecl* methodDecl, + const std::string& returnValue, + std::string const& paramBitField) { if (methodDecl->size_overridden_methods() == 0) { std::string aNiceName = niceName(methodDecl); definitionSet.insert( { aNiceName, toString(methodDecl->getCanonicalDecl()->getLocation()), returnValue }); + paramUsedSet.insert({ aNiceName, paramBitField }); return; } @@ -161,7 +184,7 @@ void VirtualDead::markSuperclassMethods(const CXXMethodDecl* methodDecl, std::st iter != methodDecl->end_overridden_methods(); ++iter) { const CXXMethodDecl* overriddenMethod = *iter; - markSuperclassMethods(overriddenMethod, returnValue); + markSuperclassMethods(overriddenMethod, returnValue, paramBitField); } } diff --git a/compilerplugins/clang/virtualdead.py b/compilerplugins/clang/virtualdead.py index 9f5ab39663d0..eccfbd4f76e3 100755 --- a/compilerplugins/clang/virtualdead.py +++ b/compilerplugins/clang/virtualdead.py @@ -5,6 +5,8 @@ import re import io callDict = dict() # callInfo tuple -> callValue +definitionToSourceLocationMap = dict() +paramSet = set() # paraminfo tuple # clang does not always use exactly the same numbers in the type-parameter vars it generates # so I need to substitute them to ensure we can match correctly. @@ -17,13 +19,22 @@ with io.open("workdir/loplugin.virtualdead.log", "rb", buffering=1024*1024) as t for line in txt: try: tokens = line.strip().split("\t") - nameAndParams = normalizeTypeParams(tokens[1]) - sourceLocation = tokens[2] - returnValue = tokens[3] - callInfo = (nameAndParams, sourceLocation) - if not callInfo in callDict: - callDict[callInfo] = set() - callDict[callInfo].add(returnValue) + if tokens[0] == "virtual:": + nameAndParams = normalizeTypeParams(tokens[1]) + sourceLocation = tokens[2] + returnValue = tokens[3] + callInfo = (nameAndParams, sourceLocation) + if not callInfo in callDict: + callDict[callInfo] = set() + callDict[callInfo].add(returnValue) + definitionToSourceLocationMap[nameAndParams] = sourceLocation + elif tokens[0] == "param:": + name = normalizeTypeParams(tokens[1]) + if len(tokens)>2: + bitfield = tokens[2] + paramSet.add((name,bitfield)) + else: + print( "unknown line: " + line) except IndexError: print "problem with line " + line.strip() raise @@ -44,18 +55,56 @@ for callInfo, callValues in callDict.iteritems(): continue if "pure" in callValue: continue - sourceLoc = callInfo[1] - if sourceLoc.startswith("workdir/"): - continue + srcloc = callInfo[1] + if srcloc.startswith("workdir/"): continue + # ignore Qt stuff + if srcloc.startswith("Gui/"): continue + if srcloc.startswith("Widgets/"): continue + if srcloc.startswith("Core/"): continue functionSig = callInfo[0] - tmp1list.append((sourceLoc, functionSig, callValue)) + tmp1list.append((srcloc, functionSig, callValue)) +def merge_bitfield(a, b): + if len(a) == 0: return b + ret = "" + for i, c in enumerate(b): + if c == "1" or a[i] == "1": + ret += "1" + else: + ret += "0" + return ret; +tmp2dict = dict() +tmp2list = list() +for paramInfo in paramSet: + name = paramInfo[0] + bitfield = paramInfo[1] + if re.match( r"\w+ com::", name): continue + if re.match( r"\w+ ooo::vba::", name): continue + if re.match( r"\w+ orcus::", name): continue + if re.match( r"\w+ std::", name): continue + if not name in tmp2dict: + tmp2dict[name] = bitfield + else: + tmp2dict[name] = merge_bitfield(tmp2dict[name], bitfield) +for name, bitfield in tmp2dict.iteritems(): + srcloc = definitionToSourceLocationMap[name] + # ignore Qt stuff + if srcloc.startswith("Gui/"): continue + if srcloc.startswith("Widgets/"): continue + if srcloc.startswith("Core/"): continue + # ignore external stuff + if srcloc.startswith("workdir/"): continue + # referenced by generated code in workdir/ + if srcloc.startswith("writerfilter/source/ooxml/OOXMLFactory.hxx"): continue + if "0" in bitfield: + tmp2list.append((srcloc, name, bitfield)) # sort results by filename:lineno def natural_sort_key(s, _nsre=re.compile('([0-9]+)')): return [int(text) if text.isdigit() else text.lower() for text in re.split(_nsre, s)] tmp1list.sort(key=lambda v: natural_sort_key(v[0])) +tmp2list.sort(key=lambda v: natural_sort_key(v[0])) # print out the results with open("compilerplugins/clang/virtualdead.results", "wt") as f: @@ -63,3 +112,8 @@ with open("compilerplugins/clang/virtualdead.results", "wt") as f: f.write(v[0] + "\n") f.write(" " + v[1] + "\n") f.write(" " + v[2] + "\n") +with open("compilerplugins/clang/virtualdead.unusedparams.results", "wt") as f: + for v in tmp2list: + f.write(v[0] + "\n") + f.write(" " + v[1] + "\n") + f.write(" " + v[2] + "\n") diff --git a/compilerplugins/clang/virtualdead.results b/compilerplugins/clang/virtualdead.results index 1e8d8a886cad..87e6431675e0 100644 --- a/compilerplugins/clang/virtualdead.results +++ b/compilerplugins/clang/virtualdead.results @@ -10,27 +10,6 @@ basic/source/comp/codegen.cxx:526 desktop/source/deployment/registry/inc/dp_backenddb.hxx:119 class rtl::OUString dp_registry::backend::BackendDb::getDbNSName() "http://openoffi -Gui/qaccessible.h:465 - class QObject * QAccessibleInterface::object()const - 0 -Gui/qaccessible.h:466 - class QWindow * QAccessibleInterface::window()const - 0 -Gui/qaccessible.h:478 - int QAccessibleInterface::indexOfChild(const class QAccessibleInterface *,)const - 0 -Gui/qaccessible.h:482 - void QAccessibleInterface::setText(enum QAccessible::Text,const class QString &,) - empty -Gui/qaccessible.h:612 - _Bool QAccessibleTableInterface::isColumnSelected(int,)const - 1 -Gui/qaccessible.h:613 - _Bool QAccessibleTableInterface::isRowSelected(int,)const - 1 -Gui/qaccessible.h:619 - void QAccessibleTableInterface::modelChange(class QAccessibleTableModelChangeEvent *,) - empty include/basegfx/utils/unopolypolygon.hxx:97 void basegfx::unotools::UnoPolyPolygon::modifying()const empty @@ -55,9 +34,6 @@ include/canvas/base/graphicdevicebase.hxx:319 include/connectivity/sdbcx/IRefreshable.hxx:31 void connectivity::sdbcx::IRefreshableGroups::refreshGroups() empty -include/dbaccess/ToolBoxHelper.hxx:56 - void dbaui::OToolBoxHelper::setImageList(short,) - empty include/filter/msfilter/msdffimp.hxx:546 _Bool SvxMSDffManager::ShapeHasText(unsigned long,unsigned long,)const 1 @@ -82,7 +58,7 @@ include/svtools/unoevent.hxx:199 include/test/text/xtextcontent.hxx:29 _Bool apitest::XTextContent::isAttachSupported() 1 -include/ucbhelper/resultset.hxx:425 +include/ucbhelper/resultset.hxx:411 void ucbhelper::ResultSetDataSupplier::close() empty include/unotools/desktopterminationobserver.hxx:35 @@ -91,9 +67,6 @@ include/unotools/desktopterminationobserver.hxx:35 include/vbahelper/vbahelperinterface.hxx:77 int InheritedHelperInterfaceImpl::getCreator() 1400204879 -include/vcl/tabpage.hxx:51 - void TabPage::DeactivatePage() - empty sc/source/core/opencl/formulagroupcl.cxx:1059 void sc::opencl::DynamicKernelSlidingArgument::GenSlidingWindowFunction(class std::__cxx11::basic_stringstream<char> &,) empty diff --git a/compilerplugins/clang/virtualdead.unusedparams.results b/compilerplugins/clang/virtualdead.unusedparams.results new file mode 100644 index 000000000000..4a5fe58aa00c --- /dev/null +++ b/compilerplugins/clang/virtualdead.unusedparams.results @@ -0,0 +1,450 @@ +basctl/source/inc/doceventnotifier.hxx:42 + void basctl::DocumentEventListener::onDocumentCreated(const class basctl::ScriptDocument &,) + 0 +basctl/source/inc/doceventnotifier.hxx:43 + void basctl::DocumentEventListener::onDocumentOpened(const class basctl::ScriptDocument &,) + 0 +basctl/source/inc/doceventnotifier.hxx:44 + void basctl::DocumentEventListener::onDocumentSave(const class basctl::ScriptDocument &,) + 0 +basctl/source/inc/doceventnotifier.hxx:45 + void basctl::DocumentEventListener::onDocumentSaveDone(const class basctl::ScriptDocument &,) + 0 +basctl/source/inc/doceventnotifier.hxx:46 + void basctl::DocumentEventListener::onDocumentSaveAs(const class basctl::ScriptDocument &,) + 0 +basctl/source/inc/doceventnotifier.hxx:47 + void basctl::DocumentEventListener::onDocumentSaveAsDone(const class basctl::ScriptDocument &,) + 0 +basctl/source/inc/doceventnotifier.hxx:49 + void basctl::DocumentEventListener::onDocumentTitleChanged(const class basctl::ScriptDocument &,) + 0 +basic/source/comp/codegen.cxx:464 + void OffSetAccumulator::start(const unsigned char *,) + 0 +basic/source/comp/codegen.cxx:465 + void OffSetAccumulator::processOpCode0(enum SbiOpcode,) + 0 +basic/source/comp/codegen.cxx:466 + void OffSetAccumulator::processOpCode1(enum SbiOpcode,type-parameter-?-?,) + 00 +basic/source/comp/codegen.cxx:467 + void OffSetAccumulator::processOpCode2(enum SbiOpcode,type-parameter-?-?,type-parameter-?-?,) + 000 +chart2/source/controller/dialogs/ChangingResource.hxx:30 + void chart::ResourceChangeListener::stateChanged(class chart::ChangingResource *,) + 0 +chart2/source/controller/dialogs/ChartTypeDialogController.hxx:105 + void chart::ChartTypeDialogController::fillExtraControls(const class chart::ChartTypeParameter &,const class com::sun::star::uno::Reference<class com::sun::star::chart2::XChartDocument> &,const class com::sun::star::uno::Reference<class com::sun::star::beans::XPropertySet> &,)const + 011 +dbaccess/source/core/api/CacheSet.hxx:174 + _Bool dbaccess::OCacheSet::previous_checked(_Bool,) + 0 +dbaccess/source/core/api/CacheSet.hxx:175 + _Bool dbaccess::OCacheSet::absolute_checked(int,_Bool,) + 10 +dbaccess/source/core/api/CacheSet.hxx:176 + _Bool dbaccess::OCacheSet::last_checked(_Bool,) + 0 +dbaccess/source/core/inc/containerapprove.hxx:53 + void dbaccess::IContainerApprove::approveElement(const class rtl::OUString &,const class com::sun::star::uno::Reference<class com::sun::star::uno::XInterface> &,) + 10 +dbaccess/source/ui/inc/callbacks.hxx:53 + _Bool dbaui::IControlActionListener::requestDrag(signed char,const class Point &,) + 01 +dbaccess/source/ui/inc/TableDesignControl.hxx:68 + _Bool dbaui::OTableRowView::IsPrimaryKeyAllowed(long,) + 0 +dbaccess/source/ui/inc/TableDesignControl.hxx:70 + _Bool dbaui::OTableRowView::IsDeleteAllowed(long,) + 0 +desktop/source/deployment/registry/inc/dp_backend.h:84 + void dp_registry::backend::Package::processPackage_(class osl::ResettableGuard<class osl::Mutex> &,_Bool,_Bool,const class rtl::Reference<class dp_misc::AbortChannel> &,const class com::sun::star::uno::Reference<class com::sun::star::ucb::XCommandEnvironment> &,) + 01111 +extensions/source/bibliography/loadlisteneradapter.hxx:110 + void bib::OLoadListener::_unloading(const struct com::sun::star::lang::EventObject &,) + 0 +extensions/source/bibliography/loadlisteneradapter.hxx:111 + void bib::OLoadListener::_reloading(const struct com::sun::star::lang::EventObject &,) + 0 +forms/source/richtext/textattributelistener.hxx:32 + void frm::ITextAttributeListener::onAttributeStateChanged(int,const struct frm::AttributeState &,) + 10 +forms/source/richtext/textattributelistener.hxx:44 + void frm::ITextSelectionListener::onSelectionChanged(const struct ESelection &,) + 0 +fpicker/source/office/fpdialogbase.hxx:106 + void SvtFileDialog_Base::setImage(short,const class com::sun::star::uno::Any &,) + 01 +include/canvas/base/bufferedgraphicdevicebase.hxx:230 + void canvas::BufferedGraphicDeviceBase::windowShown(const struct com::sun::star::lang::EventObject &,) + 0 +include/canvas/base/bufferedgraphicdevicebase.hxx:237 + void canvas::BufferedGraphicDeviceBase::windowHidden(const struct com::sun::star::lang::EventObject &,) + 0 +include/canvas/base/graphicdevicebase.hxx:240 + unsigned char canvas::GraphicDeviceBase::enterFullScreenMode(unsigned char,) + 0 +include/canvas/base/graphicdevicebase.hxx:306 + void canvas::GraphicDeviceBase::removePropertyChangeListener(const class rtl::OUString &,const class com::sun::star::uno::Reference<class com::sun::star::beans::XPropertyChangeListener> &,) + 00 +include/canvas/base/graphicdevicebase.hxx:319 + void canvas::GraphicDeviceBase::removeVetoableChangeListener(const class rtl::OUString &,const class com::sun::star::uno::Reference<class com::sun::star::beans::XVetoableChangeListener> &,) + 00 +include/canvas/base/integerbitmapbase.hxx:59 + void canvas::IntegerBitmapBase::setData(const class com::sun::star::uno::Sequence<signed char> &,const struct com::sun::star::rendering::IntegerBitmapLayout &,const struct com::sun::star::geometry::IntegerRectangle2D &,) + 011 +include/canvas/base/integerbitmapbase.hxx:73 + void canvas::IntegerBitmapBase::setPixel(const class com::sun::star::uno::Sequence<signed char> &,const struct com::sun::star::rendering::IntegerBitmapLayout &,const struct com::sun::star::geometry::IntegerPoint2D &,) + 011 +include/cppuhelper/propshlp.hxx:326 + void cppu::IEventNotificationHook::fireEvents(int *,int,unsigned char,_Bool,) + 0111 +include/drawinglayer/primitive2d/textbreakuphelper.hxx:61 + _Bool drawinglayer::primitive2d::TextBreakupHelper::allowChange(unsigned int,class basegfx::B2DHomMatrix &,unsigned int,unsigned int,) + 0111 +include/editeng/editeng.hxx:475 + void EditEngine::PaintingFirstLine(int,const class Point &,long,const class Point &,short,class OutputDevice *,) + 110111 +include/editeng/editeng.hxx:478 + void EditEngine::ParagraphConnected(int,int,) + 01 +include/editeng/editeng.hxx:503 + void EditEngine::FieldClicked(const class SvxFieldItem &,int,int,) + 100 +include/editeng/svxrtf.hxx:247 + void SvxRTFParser::UnknownAttrToken(int,class SfxItemSet *,) + 10 +include/filter/msfilter/msdffimp.hxx:506 + void SvxMSDffManager::ProcessClientAnchor2(class SvStream &,class DffRecordHeader &,class SvxMSDffClientData &,struct DffObjData &,) + 1101 +include/filter/msfilter/msdffimp.hxx:546 + _Bool SvxMSDffManager::ShapeHasText(unsigned long,unsigned long,)const + 00 +include/oox/dump/dumperbase.hxx:473 + void oox::dump::ConfigItemBase::implProcessConfigItemInt(class oox::TextInputStream &,long,const class rtl::OUString &,) + 011 +include/oox/dump/dumperbase.hxx:564 + class rtl::OUString oox::dump::NameListBase::implGetNameDbl(const class oox::dump::Config &,double,)const + 01 +include/oox/dump/oledumper.hxx:166 + void oox::dump::ComCtlObjectBase::implDumpCommonExtra(long,) + 0 +include/oox/export/shapes.hxx:136 + class oox::drawingml::ShapeExport & oox::drawingml::ShapeExport::WriteNonVisualProperties(const class com::sun::star::uno::Reference<class com::sun::star::drawing::XShape> &,) + 0 +include/sfx2/objsh.hxx:637 + void SfxObjectShell::FillClass(class SvGlobalName *,enum SotClipboardFormatId *,class rtl::OUString *,class rtl::OUString *,class rtl::OUString *,int,_Bool,)const + 1101111 +include/sfx2/sfxstatuslistener.hxx:49 + void SfxStatusListener::StateChanged(unsigned short,enum SfxItemState,const class SfxPoolItem *,) + 011 +include/sfx2/sidebar/ControllerItem.hxx:44 + void sfx2::sidebar::ControllerItem::ItemUpdateReceiverInterface::NotifyItemUpdate(const unsigned short,const enum SfxItemState,const class SfxPoolItem *,const _Bool,) + 1110 +include/sfx2/sidebar/TitleBar.hxx:61 + void sfx2::sidebar::TitleBar::PaintDecoration(class OutputDevice &,const class tools::Rectangle &,) + 10 +include/sfx2/stbitem.hxx:100 + _Bool SfxStatusBarControl::MouseButtonUp(const class MouseEvent &,) + 0 +include/sfx2/thumbnailviewitem.hxx:118 + void ThumbnailViewItem::calculateItemsPosition(const long,const long,const long,unsigned int,const struct ThumbnailItemAttributes *,) + 10111 +include/svl/svdde.hxx:228 + _Bool DdeGetPutItem::Put(const class DdeData *,) + 0 +include/svl/svdde.hxx:237 + class DdeData * DdeTopic::Get(enum SotClipboardFormatId,) + 0 +include/svl/svdde.hxx:238 + _Bool DdeTopic::Put(const class DdeData *,) + 0 +include/svl/svdde.hxx:239 + _Bool DdeTopic::Execute(const class rtl::OUString *,) + 0 +include/svl/svdde.hxx:241 + _Bool DdeTopic::MakeItem(const class rtl::OUString &,) + 0 +include/svtools/table/tablerenderer.hxx:113 + void svt::table::ITableRenderer::PaintColumnHeader(int,_Bool,class OutputDevice &,const class tools::Rectangle &,const class StyleSettings &,) + 10111 +include/svtools/table/tablerenderer.hxx:177 + void svt::table::ITableRenderer::PaintRowHeader(_Bool,_Bool,class OutputDevice &,const class tools::Rectangle &,const class StyleSettings &,) + 00111 +include/svtools/table/tablerenderer.hxx:224 + void svt::table::ITableRenderer::HideCellCursor(class vcl::Window &,const class tools::Rectangle &,) + 10 +include/svx/fmtools.hxx:141 + void FmXDisposeListener::disposing(const struct com::sun::star::lang::EventObject &,short,) + 01 +include/svx/IAccessibleParent.hxx:80 + _Bool accessibility::IAccessibleParent::ReplaceChild(class accessibility::AccessibleShape *,const class com::sun::star::uno::Reference<class com::sun::star::drawing::XShape> &,const long,const class accessibility::AccessibleShapeTreeInfo &,) + 1101 +include/svx/selectioncontroller.hxx:48 + _Bool sdr::SelectionController::onMouseButtonUp(const class MouseEvent &,class vcl::Window *,) + 10 +include/svx/svdhdl.hxx:242 + void SdrHdl::onHelpRequest(const class HelpEvent &,) + 0 +include/svx/svdundo.hxx:69 + class rtl::OUString SdrUndoAction::GetSdrRepeatComment(class SdrView &,)const + 0 +include/svx/svxdlg.hxx:463 + class VclPtr<class SfxAbstractTabDialog> SvxAbstractDialogFactory::CreateSvxFormatCellsDialog(class weld::Window *,const class SfxItemSet *,const class SdrModel &,const class SdrObject *,) + 1110 +include/vcl/accessibletable.hxx:91 + class tools::Rectangle vcl::table::IAccessibleTable::GetFieldCharacterBounds(int,int,int,) + 001 +include/vcl/accessibletable.hxx:92 + int vcl::table::IAccessibleTable::GetFieldIndexAtPoint(int,int,const class Point &,) + 001 +include/vcl/accessibletable.hxx:93 + void vcl::table::IAccessibleTable::FillAccessibleStateSetForCell(class utl::AccessibleStateSetHelper &,int,unsigned short,)const + 110 +include/vcl/dndhelp.hxx:72 + void vcl::unohelper::DragAndDropClient::dragExit(const struct com::sun::star::datatransfer::dnd::DropTargetEvent &,) + 0 +include/vcl/ITiledRenderable.hxx:209 + void vcl::ITiledRenderable::setClientZoom(int,int,int,int,) + 1010 +include/vcl/opengl/OpenGLContext.hxx:141 + struct SystemWindowData OpenGLContext::generateWinData(class vcl::Window *,_Bool,) + 10 +include/vcl/task.hxx:71 + unsigned long Task::UpdateMinPeriod(unsigned long,unsigned long,)const + 01 +include/vcl/treelist.hxx:304 + void SvListView::ModelIsMoving(class SvTreeListEntry *,class SvTreeListEntry *,unsigned long,) + 100 +include/xmloff/txtimp.hxx:677 + void XMLTextImportHelper::RedlineAdjustStartNodeCursor(_Bool,) + 0 +include/xmloff/xmlevent.hxx:129 + class SvXMLImportContext * XMLEventContextFactory::CreateContext(class SvXMLImport &,unsigned short,const class rtl::OUString &,const class com::sun::star::uno::Reference<class com::sun::star::xml::sax::XAttributeList> &,class XMLEventsImportContext *,const class rtl::OUString &,const class rtl::OUString &,) + 1111110 +include/xmloff/xmlimp.hxx:244 + class SvXMLImportContext * SvXMLImport::CreateDocumentContext(const unsigned short,const class rtl::OUString &,const class com::sun::star::uno::Reference<class com::sun::star::xml::sax::XAttributeList> &,) + 110 +sc/inc/filter.hxx:82 + void ScFormatFilterPlugin::ScExportHTML(class SvStream &,const class rtl::OUString &,class ScDocument *,const class ScRange &,const unsigned short,_Bool,const class rtl::OUString &,class rtl::OUString &,const class rtl::OUString &,) + 111101111 +sc/inc/filter.hxx:84 + void ScFormatFilterPlugin::ScExportRTF(class SvStream &,class ScDocument *,const class ScRange &,const unsigned short,) + 1110 +sc/inc/formulagroup.hxx:145 + class boost::intrusive_ptr<class ScMatrix> sc::FormulaGroupInterpreter::inverseMatrix(const class ScMatrix &,) + 0 +sc/source/core/opencl/formulagroupcl.cxx:1059 + void sc::opencl::DynamicKernelSlidingArgument::GenSlidingWindowFunction(class std::__cxx11::basic_stringstream<char> &,) + 0 +sc/source/ui/vba/vbarange.hxx:68 + void ValueGetter::processValue(int,int,const class com::sun::star::uno::Any &,) + 001 +sd/source/ui/inc/View.hxx:92 + signed char sd::View::AcceptDrop(const struct AcceptDropEvent &,class DropTargetHelper &,class sd::Window *,unsigned short,struct o3tl::strong_int<unsigned char, struct SdrLayerIDTag>,) + 11001 +sd/source/ui/inc/ViewClipboard.hxx:64 + unsigned short sd::ViewClipboard::DetermineInsertPosition(const class SdTransferable &,) + 0 +sd/source/ui/inc/ViewShell.hxx:212 + void sd::ViewShell::UpdatePreview(class SdPage *,_Bool,) + 10 +sdext/source/pdfimport/inc/contentsink.hxx:150 + void pdfi::ContentSink::drawMask(const class com::sun::star::uno::Sequence<struct com::sun::star::beans::PropertyValue> &,_Bool,) + 10 +sdext/source/pdfimport/inc/contentsink.hxx:160 + void pdfi::ContentSink::drawColorMaskedImage(const class com::sun::star::uno::Sequence<struct com::sun::star::beans::PropertyValue> &,const class com::sun::star::uno::Sequence<class com::sun::star::uno::Any> &,) + 10 +sdext/source/pdfimport/inc/contentsink.hxx:164 + void pdfi::ContentSink::drawMaskedImage(const class com::sun::star::uno::Sequence<struct com::sun::star::beans::PropertyValue> &,const class com::sun::star::uno::Sequence<struct com::sun::star::beans::PropertyValue> &,_Bool,) + 110 +sdext/source/pdfimport/inc/treevisiting.hxx:46 + void pdfi::ElementTreeVisitor::visit(struct pdfi::HyperlinkElement &,const class __gnu_debug::_Safe_iterator<struct std::__cxx1998::_List_const_iterator<class std::unique_ptr<struct pdfi::Element, struct std::default_delete<struct pdfi::Element> > >, class std::__debug::list<class std::unique_ptr<struct pdfi::Element, struct std::default_delete<struct pdfi::Element> >, class std::allocator<class std::unique_ptr<struct pdfi::Element, struct std::default_delete<struct pdfi::Element> > > >, struct std::bidirectional_iterator_tag> &,) + 10 +sdext/source/pdfimport/inc/treevisiting.hxx:47 + void pdfi::ElementTreeVisitor::visit(struct pdfi::TextElement &,const class __gnu_debug::_Safe_iterator<struct std::__cxx1998::_List_const_iterator<class std::unique_ptr<struct pdfi::Element, struct std::default_delete<struct pdfi::Element> > >, class std::__debug::list<class std::unique_ptr<struct pdfi::Element, struct std::default_delete<struct pdfi::Element> >, class std::allocator<class std::unique_ptr<struct pdfi::Element, struct std::default_delete<struct pdfi::Element> > > >, struct std::bidirectional_iterator_tag> &,) + 10 +sdext/source/pdfimport/inc/treevisiting.hxx:49 + void pdfi::ElementTreeVisitor::visit(struct pdfi::FrameElement &,const class __gnu_debug::_Safe_iterator<struct std::__cxx1998::_List_const_iterator<class std::unique_ptr<struct pdfi::Element, struct std::default_delete<struct pdfi::Element> > >, class std::__debug::list<class std::unique_ptr<struct pdfi::Element, struct std::default_delete<struct pdfi::Element> >, class std::allocator<class std::unique_ptr<struct pdfi::Element, struct std::default_delete<struct pdfi::Element> > > >, struct std::bidirectional_iterator_tag> &,) + 10 +sdext/source/pdfimport/inc/treevisiting.hxx:51 + void pdfi::ElementTreeVisitor::visit(struct pdfi::ImageElement &,const class __gnu_debug::_Safe_iterator<struct std::__cxx1998::_List_const_iterator<class std::unique_ptr<struct pdfi::Element, struct std::default_delete<struct pdfi::Element> > >, class std::__debug::list<class std::unique_ptr<struct pdfi::Element, struct std::default_delete<struct pdfi::Element> >, class std::allocator<class std::unique_ptr<struct pdfi::Element, struct std::default_delete<struct pdfi::Element> > > >, struct std::bidirectional_iterator_tag> &,) + 10 +sdext/source/pdfimport/inc/treevisiting.hxx:52 + void pdfi::ElementTreeVisitor::visit(struct pdfi::PageElement &,const class __gnu_debug::_Safe_iterator<struct std::__cxx1998::_List_const_iterator<class std::unique_ptr<struct pdfi::Element, struct std::default_delete<struct pdfi::Element> > >, class std::__debug::list<class std::unique_ptr<struct pdfi::Element, struct std::default_delete<struct pdfi::Element> >, class std::allocator<class std::unique_ptr<struct pdfi::Element, struct std::default_delete<struct pdfi::Element> > > >, struct std::bidirectional_iterator_tag> &,) + 10 +sdext/source/pdfimport/inc/treevisiting.hxx:53 + void pdfi::ElementTreeVisitor::visit(struct pdfi::DocumentElement &,const class __gnu_debug::_Safe_iterator<struct std::__cxx1998::_List_const_iterator<class std::unique_ptr<struct pdfi::Element, struct std::default_delete<struct pdfi::Element> > >, class std::__debug::list<class std::unique_ptr<struct pdfi::Element, struct std::default_delete<struct pdfi::Element> >, class std::allocator<class std::unique_ptr<struct pdfi::Element, struct std::default_delete<struct pdfi::Element> > > >, struct std::bidirectional_iterator_tag> &,) + 10 +sdext/source/presenter/PresenterScrollBar.hxx:178 + double sdext::presenter::PresenterScrollBar::GetDragDistance(const int,const int,)const + 01 +sdext/source/presenter/PresenterScrollBar.hxx:180 + double sdext::presenter::PresenterScrollBar::GetMinor(const double,const double,)const + 10 +slideshow/source/engine/animationfactory.cxx:443 + void slideshow::internal::(anonymous namespace)::GenericAnimation::prefetch(const class std::shared_ptr<class slideshow::internal::AnimatableShape> &,const class std::shared_ptr<class slideshow::internal::ShapeAttributeLayer> &,) + 00 +slideshow/source/engine/opengl/TransitionImpl.hxx:174 + void OGLTransitionImpl::prepare(double,double,double,double,double,) + 01100 +slideshow/source/engine/opengl/TransitionImpl.hxx:180 + void OGLTransitionImpl::finish(double,double,double,double,double,) + 00000 +slideshow/source/inc/animation.hxx:61 + void slideshow::internal::Animation::prefetch(const class std::shared_ptr<class slideshow::internal::AnimatableShape> &,const class std::shared_ptr<class slideshow::internal::ShapeAttributeLayer> &,) + 00 +slideshow/source/inc/shapelistenereventhandler.hxx:51 + _Bool slideshow::internal::ShapeListenerEventHandler::listenerAdded(const class com::sun::star::uno::Reference<class com::sun::star::presentation::XShapeEventListener> &,const class com::sun::star::uno::Reference<class com::sun::star::drawing::XShape> &,) + 01 +slideshow/source/inc/shapelistenereventhandler.hxx:54 + _Bool slideshow::internal::ShapeListenerEventHandler::listenerRemoved(const class com::sun::star::uno::Reference<class com::sun::star::presentation::XShapeEventListener> &,const class com::sun::star::uno::Reference<class com::sun::star::drawing::XShape> &,) + 01 +starmath/source/wordexportbase.hxx:37 + void SmWordExportBase::HandleText(const class SmNode *,int,) + 10 +svx/source/inc/fmtextcontrolshell.hxx:69 + void svx::IContextRequestObserver::contextMenuRequested(const struct com::sun::star::awt::MouseEvent &,) + 0 +sw/inc/calbck.hxx:144 + void SwClient::Modify(const class SfxPoolItem *const,const class SfxPoolItem *const,) + 10 +sw/inc/IDocumentLinksAdministration.hxx:55 + _Bool IDocumentLinksAdministration::SetData(const class rtl::OUString &,const class rtl::OUString &,const class com::sun::star::uno::Any &,) + 100 +sw/inc/IDocumentRedlineAccess.hxx:168 + _Bool IDocumentRedlineAccess::AppendTableRowRedline(class SwTableRowRedline *,_Bool,) + 10 +sw/inc/IDocumentRedlineAccess.hxx:169 + _Bool IDocumentRedlineAccess::AppendTableCellRedline(class SwTableCellRedline *,_Bool,) + 10 +sw/inc/swcrsr.hxx:161 + _Bool SwCursor::LeftRight(_Bool,unsigned short,unsigned short,_Bool,_Bool,_Bool,const class SwRootFrame *,) + 1100000 +sw/source/core/access/acccontext.hxx:348 + _Bool SwAccessibleContext::SetSelectedState(_Bool,) + 0 +sw/source/core/inc/flowfrm.hxx:145 + _Bool SwFlowFrame::ShouldBwdMoved(class SwLayoutFrame *,_Bool,_Bool &,) + 101 +sw/source/core/inc/swblocks.hxx:109 + class ErrCode SwImpBlocks::Rename(unsigned short,const class rtl::OUString &,const class rtl::OUString &,) + 110 +sw/source/core/inc/txmsrt.hxx:145 + void SwTOXSortTabBase::FillText(class SwTextNode &,const class SwIndex &,unsigned short,const class SwRootFrame *const,)const + 1100 +sw/source/filter/ww8/wrtww8.hxx:798 + void MSWordExportBase::WriteHyperlinkData(const class sw::mark::IFieldmark &,) + 0 +sw/source/filter/ww8/wrtww8.hxx:863 + void MSWordExportBase::OutputGrfNode(const class SwGrfNode &,) + 0 +sw/source/filter/xml/xmlexpit.hxx:84 + void SvXMLExportItemMapper::handleElementItem(class SvXMLExport &,const struct SvXMLItemMapEntry &,const class SfxPoolItem &,const class SvXMLUnitConverter &,const class SfxItemSet &,enum SvXmlExportFlags,)const + 011000 +sw/source/filter/xml/xmlimpit.hxx:48 + _Bool SvXMLImportItemMapper::handleSpecialItem(const struct SvXMLItemMapEntry &,class SfxPoolItem &,class SfxItemSet &,const class rtl::OUString &,const class SvXMLUnitConverter &,const class SvXMLNamespaceMap &,) + 111110 +sw/source/uibase/inc/imaildsplistener.hxx:44 + void IMailDispatcherListener::idle(class rtl::Reference<class MailDispatcher>,) + 0 +sw/source/uibase/inc/imaildsplistener.hxx:50 + void IMailDispatcherListener::mailDelivered(class rtl::Reference<class MailDispatcher>,class com::sun::star::uno::Reference<class com::sun::star::mail::XMailMessage>,) + 01 +vcl/inc/outdev.h:122 + _Bool ImplGlyphFallbackFontSubstitution::FindFontSubstitute(class FontSelectPattern &,class LogicalFontInstance *,class rtl::OUString &,)const + 101 +vcl/inc/salframe.hxx:145 + void SalFrame::SetRepresentedURL(const class rtl::OUString &,) + 0 +vcl/inc/salframe.hxx:191 + void SalFrame::Flush(const class tools::Rectangle &,) + 0 +vcl/inc/salframe.hxx:201 + _Bool SalFrame::MapUnicodeToKeyCode(char16_t,struct o3tl::strong_int<unsigned short, struct LanguageTypeTag>,class vcl::KeyCode &,) + 000 +vcl/inc/salframe.hxx:244 + void SalFrame::BeginSetClipRegion(unsigned int,) + 0 +vcl/inc/salgdiimpl.hxx:78 + void SalGraphicsImpl::SetXORMode(_Bool,_Bool,) + 10 +vcl/inc/salgdiimpl.hxx:115 + _Bool SalGraphicsImpl::drawPolyLineBezier(unsigned int,const struct SalPoint *,const enum PolyFlags *,) + 000 +vcl/inc/salgdiimpl.hxx:120 + _Bool SalGraphicsImpl::drawPolygonBezier(unsigned int,const struct SalPoint *,const enum PolyFlags *,) + 000 +vcl/inc/salgdiimpl.hxx:125 + _Bool SalGraphicsImpl::drawPolyPolygonBezier(unsigned int,const unsigned int *,const struct SalPoint *const *,const enum PolyFlags *const *,) + 0000 +vcl/inc/salgdiimpl.hxx:132 + void SalGraphicsImpl::copyArea(long,long,long,long,long,long,_Bool,) + 1111110 +vcl/inc/salgdiimpl.hxx:166 + _Bool SalGraphicsImpl::drawEPS(long,long,long,long,void *,unsigned int,) + 000000 +vcl/inc/salinst.hxx:92 + _Bool SalInstance::SVMainHook(int *,) + 0 +vcl/inc/salinst.hxx:125 + void SalInstance::GetPrinterQueueState(struct SalPrinterQueueInfo *,) + 0 +vcl/inc/salinst.hxx:185 + void SalInstance::AddToRecentDocumentList(const class rtl::OUString &,const class rtl::OUString &,const class rtl::OUString &,) + 100 +vcl/inc/salmenu.hxx:71 + void SalMenu::SetItemBits(unsigned int,enum MenuItemBits,) + 10 +vcl/inc/salmenu.hxx:75 + void SalMenu::SetItemImage(unsigned int,class SalMenuItem *,const class Image &,) + 011 +vcl/inc/salmenu.hxx:76 + void SalMenu::SetAccelerator(unsigned int,class SalMenuItem *,const class vcl::KeyCode &,const class rtl::OUString &,) + 0101 +vcl/inc/salmenu.hxx:77 + void SalMenu::GetSystemMenuData(struct SystemMenuData *,) + 0 +vcl/inc/salmenu.hxx:80 + _Bool SalMenu::AddMenuBarButton(const struct SalMenuButtonItem &,) + 0 +vcl/inc/salmenu.hxx:81 + void SalMenu::RemoveMenuBarButton(unsigned short,) + 0 +vcl/inc/salmenu.hxx:93 + class tools::Rectangle SalMenu::GetMenuBarButtonRectPixel(unsigned short,class SalFrame *,) + 00 +vcl/inc/salobj.hxx:49 + void SalObject::Enable(_Bool,) + 0 +vcl/inc/salprn.hxx:83 + void SalInfoPrinter::InitPaperFormats(const class ImplJobSetup *,) + 0 +vcl/inc/salprn.hxx:85 + int SalInfoPrinter::GetLandscapeAngle(const class ImplJobSetup *,) + 0 +vcl/inc/salprn.hxx:114 + class SalGraphics * SalPrinter::StartPage(class ImplJobSetup *,_Bool,) + 10 +vcl/inc/WidgetDrawInterface.hxx:63 + _Bool vcl::WidgetDrawInterface::drawNativeControl(enum ControlType,enum ControlPart,const class tools::Rectangle &,enum ControlState,const class ImplControlValue &,const class rtl::OUString &,) + 111110 +vcl/inc/WidgetDrawInterface.hxx:87 + _Bool vcl::WidgetDrawInterface::getNativeControlRegion(enum ControlType,enum ControlPart,const class tools::Rectangle &,enum ControlState,const class ImplControlValue &,const class rtl::OUString &,class tools::Rectangle &,class tools::Rectangle &,) + 11111011 +writerfilter/inc/dmapper/resourcemodel.hxx:173 + void writerfilter::BinaryObj::data(const unsigned char *,unsigned long,class tools::SvRef<class writerfilter::Reference<class writerfilter::Properties> >,) + 110 +writerfilter/inc/ooxml/OOXMLDocument.hxx:216 + void writerfilter::ooxml::OOXMLDocument::setXNoteType(unsigned int,) + 0 +writerfilter/source/dmapper/LoggedResources.hxx:93 + void writerfilter::LoggedStream::lcl_info(const class std::__cxx11::basic_string<char, struct std::char_traits<char>, class std::allocator<char> > &,) + 0 +writerfilter/source/dmapper/LoggedResources.hxx:129 + void writerfilter::LoggedTable::lcl_entry(int,class tools::SvRef<class writerfilter::Reference<class writerfilter::Properties> >,) + 01 +xmloff/inc/forms/property_handler.hxx:44 + class rtl::OUString xmloff::PropertyHandlerBase::getAttributeValue(const class std::__debug::map<enum xmloff::PropertyId, class com::sun::star::uno::Any, struct std::less<enum xmloff::PropertyId>, class std::allocator<struct std::pair<const enum xmloff::PropertyId, class com::sun::star::uno::Any> > > &,)const + 0 _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits