summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--helpcompiler/source/HelpLinker_main.cxx1
-rw-r--r--i18npool/inc/bullet.h4
-rw-r--r--i18npool/inc/characterclassificationImpl.hxx1
-rw-r--r--i18npool/inc/collatorImpl.hxx1
-rw-r--r--i18npool/inc/inputsequencechecker.hxx1
-rw-r--r--i18npool/inc/localedata.hxx1
-rw-r--r--i18npool/inc/wtt.h2
-rw-r--r--i18npool/source/nativenumber/data/numberchar.h2
-rw-r--r--i18nutil/source/utility/paper.cxx1
-rw-r--r--idl/IwyuFilter_idl.yaml2
-rw-r--r--idl/inc/basobj.hxx1
-rw-r--r--idl/inc/bastype.hxx2
-rw-r--r--idl/inc/hash.hxx3
-rw-r--r--idl/inc/module.hxx1
-rw-r--r--idl/inc/object.hxx4
-rw-r--r--idl/inc/slot.hxx3
-rw-r--r--idl/inc/types.hxx1
-rw-r--r--idl/source/cmptools/hash.cxx5
-rw-r--r--idl/source/objects/basobj.cxx2
-rw-r--r--idl/source/objects/bastype.cxx3
-rw-r--r--idl/source/objects/module.cxx2
-rw-r--r--idl/source/objects/object.cxx2
-rw-r--r--idl/source/objects/slot.cxx1
-rw-r--r--idl/source/prj/command.cxx1
-rw-r--r--idl/source/prj/database.cxx3
-rw-r--r--idl/source/prj/globals.cxx2
-rw-r--r--idl/source/prj/parser.cxx1
-rw-r--r--idl/source/prj/svidl.cxx2
-rw-r--r--io/source/acceptor/acc_pipe.cxx1
-rw-r--r--io/source/acceptor/acc_socket.cxx1
-rw-r--r--io/source/connector/ctr_socket.cxx1
-rw-r--r--javaunohelper/source/vm.cxx1
-rw-r--r--jvmfwk/inc/fwkutil.hxx1
-rw-r--r--jvmfwk/plugins/sunmajor/pluginlib/sunversion.cxx1
-rw-r--r--jvmfwk/plugins/sunmajor/pluginlib/sunversion.hxx2
-rw-r--r--jvmfwk/source/framework.cxx2
-rw-r--r--l10ntools/IwyuFilter_l10ntools.yaml9
-rw-r--r--l10ntools/inc/cfgmerge.hxx1
-rw-r--r--l10ntools/inc/common.hxx1
-rw-r--r--l10ntools/inc/export.hxx12
-rw-r--r--l10ntools/inc/helper.hxx5
-rw-r--r--l10ntools/inc/helpmerge.hxx6
-rw-r--r--l10ntools/inc/lngmerge.hxx3
-rw-r--r--l10ntools/inc/treemerge.hxx1
-rw-r--r--l10ntools/inc/xmlparse.hxx4
-rw-r--r--l10ntools/inc/xrmmerge.hxx5
-rw-r--r--l10ntools/source/cfgmerge.cxx3
-rw-r--r--l10ntools/source/common.cxx2
-rw-r--r--l10ntools/source/helper.cxx3
-rw-r--r--l10ntools/source/helpex.cxx1
-rw-r--r--l10ntools/source/helpmerge.cxx9
-rw-r--r--l10ntools/source/lngex.cxx2
-rw-r--r--l10ntools/source/lngmerge.cxx4
-rw-r--r--l10ntools/source/localize.cxx1
-rw-r--r--l10ntools/source/po.cxx1
-rw-r--r--l10ntools/source/propmerge.cxx3
-rw-r--r--l10ntools/source/treemerge.cxx2
-rw-r--r--l10ntools/source/xmlparse.cxx6
-rw-r--r--l10ntools/source/xrmmerge.cxx3
-rw-r--r--libreofficekit/qa/gtktiledviewer/gtv-lok-dialog.cxx1
-rw-r--r--libreofficekit/qa/unit/checkapi.cxx5
-rw-r--r--libreofficekit/qa/unit/test.h2
-rw-r--r--lingucomponent/IwyuFilter_lingucomponent.yaml20
-rw-r--r--lingucomponent/source/hyphenator/hyphen/hyphenimp.cxx5
-rw-r--r--lingucomponent/source/languageguessing/guess.cxx1
-rw-r--r--lingucomponent/source/languageguessing/guesslang.cxx1
-rw-r--r--lingucomponent/source/languageguessing/simpleguesser.cxx4
-rw-r--r--lingucomponent/source/languageguessing/simpleguesser.hxx2
-rw-r--r--lingucomponent/source/lingutil/lingutil.hxx2
-rw-r--r--lingucomponent/source/numbertext/numbertext.cxx5
-rw-r--r--lingucomponent/source/spellcheck/spell/sspellimp.cxx7
-rw-r--r--lingucomponent/source/spellcheck/spell/sspellimp.hxx9
-rw-r--r--lingucomponent/source/thesaurus/libnth/nthesimp.cxx6
-rw-r--r--linguistic/IwyuFilter_linguistic.yaml3
-rw-r--r--linguistic/source/dlistimp.cxx1
-rw-r--r--linguistic/source/lngopt.hxx1
-rw-r--r--linguistic/source/lngprophelp.cxx1
-rw-r--r--linguistic/source/lngsvcmgr.hxx1
-rw-r--r--linguistic/source/misc.cxx2
-rw-r--r--lotuswordpro/inc/xfilter/xfdrawobj.hxx1
-rw-r--r--lotuswordpro/inc/xfilter/xfglobal.hxx1
-rw-r--r--lotuswordpro/inc/xfilter/xfrow.hxx1
-rw-r--r--lotuswordpro/source/filter/lwpdoc.cxx2
-rw-r--r--lotuswordpro/source/filter/lwpdrawobj.cxx1
-rw-r--r--lotuswordpro/source/filter/lwptablelayout.hxx2
85 files changed, 94 insertions, 145 deletions
diff --git a/helpcompiler/source/HelpLinker_main.cxx b/helpcompiler/source/HelpLinker_main.cxx
index 75ac9f3d3ba1..70ff1f652363 100644
--- a/helpcompiler/source/HelpLinker_main.cxx
+++ b/helpcompiler/source/HelpLinker_main.cxx
@@ -21,7 +21,6 @@
#include <HelpLinker.hxx>
#include <sal/main.h>
#include <iostream>
-#include <memory>
SAL_IMPLEMENT_MAIN_WITH_ARGS(argc, argv)
{
diff --git a/i18npool/inc/bullet.h b/i18npool/inc/bullet.h
index 403d197d2c88..6f2fd5f702ae 100644
--- a/i18npool/inc/bullet.h
+++ b/i18npool/inc/bullet.h
@@ -17,6 +17,10 @@
* the License at http://www.apache.org/licenses/LICENSE-2.0 .
*/
+#pragma once
+
+#include <sal/types.h>
+
namespace i18npool {
const sal_Unicode table_AIUFullWidth_ja_JP[] = {
diff --git a/i18npool/inc/characterclassificationImpl.hxx b/i18npool/inc/characterclassificationImpl.hxx
index dad22515a79e..6ae8dee6c572 100644
--- a/i18npool/inc/characterclassificationImpl.hxx
+++ b/i18npool/inc/characterclassificationImpl.hxx
@@ -21,7 +21,6 @@
#include <com/sun/star/i18n/XCharacterClassification.hpp>
#include <cppuhelper/implbase.hxx>
#include <vector>
-#include <memory>
#include <optional>
#include <com/sun/star/lang/XServiceInfo.hpp>
diff --git a/i18npool/inc/collatorImpl.hxx b/i18npool/inc/collatorImpl.hxx
index 150f96bd7aa6..061333d84df9 100644
--- a/i18npool/inc/collatorImpl.hxx
+++ b/i18npool/inc/collatorImpl.hxx
@@ -25,7 +25,6 @@
#include <com/sun/star/lang/XServiceInfo.hpp>
#include <vector>
-#include <memory>
#include <optional>
namespace com::sun::star::i18n { class XLocaleData5; }
diff --git a/i18npool/inc/inputsequencechecker.hxx b/i18npool/inc/inputsequencechecker.hxx
index b491f6b63175..037b4f37a3a4 100644
--- a/i18npool/inc/inputsequencechecker.hxx
+++ b/i18npool/inc/inputsequencechecker.hxx
@@ -23,7 +23,6 @@
#include <com/sun/star/i18n/XExtendedInputSequenceChecker.hpp>
#include <vector>
-#include <memory>
#include <optional>
namespace com::sun::star::uno { class XComponentContext; }
diff --git a/i18npool/inc/localedata.hxx b/i18npool/inc/localedata.hxx
index 724cbba342a7..f86954791f99 100644
--- a/i18npool/inc/localedata.hxx
+++ b/i18npool/inc/localedata.hxx
@@ -31,7 +31,6 @@
#include <rtl/ustring.hxx>
#include <vector>
#include <string_view>
-#include <memory>
#include <optional>
#include <osl/module.hxx>
diff --git a/i18npool/inc/wtt.h b/i18npool/inc/wtt.h
index f3e76f968434..c81afe0e1f7f 100644
--- a/i18npool/inc/wtt.h
+++ b/i18npool/inc/wtt.h
@@ -18,6 +18,8 @@
*/
#pragma once
+#include <sal/types.h>
+
namespace i18npool {
/*
diff --git a/i18npool/source/nativenumber/data/numberchar.h b/i18npool/source/nativenumber/data/numberchar.h
index 8753d73d784d..a711e960724f 100644
--- a/i18npool/source/nativenumber/data/numberchar.h
+++ b/i18npool/source/nativenumber/data/numberchar.h
@@ -20,6 +20,8 @@
#ifndef INCLUDED_I18NPOOL_SOURCE_NATIVENUMBER_DATA_NUMBERCHAR_H
#define INCLUDED_I18NPOOL_SOURCE_NATIVENUMBER_DATA_NUMBERCHAR_H
+#include <sal/types.h>
+
namespace i18npool {
const sal_Int16 NumberChar_HalfWidth = 0;
diff --git a/i18nutil/source/utility/paper.cxx b/i18nutil/source/utility/paper.cxx
index 97dbb2938c25..1976880a060d 100644
--- a/i18nutil/source/utility/paper.cxx
+++ b/i18nutil/source/utility/paper.cxx
@@ -28,7 +28,6 @@
#include <i18nutil/paper.hxx>
-#include <cstdlib>
#include <unotools/configmgr.hxx>
#include <com/sun/star/lang/Locale.hpp>
diff --git a/idl/IwyuFilter_idl.yaml b/idl/IwyuFilter_idl.yaml
new file mode 100644
index 000000000000..ea0464ad3624
--- /dev/null
+++ b/idl/IwyuFilter_idl.yaml
@@ -0,0 +1,2 @@
+---
+assumeFilename: idl/source/objects/object.cxx
diff --git a/idl/inc/basobj.hxx b/idl/inc/basobj.hxx
index 12def9b70942..2bdd8e622e44 100644
--- a/idl/inc/basobj.hxx
+++ b/idl/inc/basobj.hxx
@@ -22,7 +22,6 @@
#include <tools/ref.hxx>
#include "bastype.hxx"
-#include <functional>
#include <vector>
class SvTokenStream;
diff --git a/idl/inc/bastype.hxx b/idl/inc/bastype.hxx
index 1c0d93765e2e..7494b35a8813 100644
--- a/idl/inc/bastype.hxx
+++ b/idl/inc/bastype.hxx
@@ -22,7 +22,7 @@
#include <sal/types.h>
-#include <tools/globname.hxx>
+#include <rtl/string.hxx>
class SvStringHashEntry;
class SvIdlDataBase;
diff --git a/idl/inc/hash.hxx b/idl/inc/hash.hxx
index 67b18b34badb..150c604ff9d4 100644
--- a/idl/inc/hash.hxx
+++ b/idl/inc/hash.hxx
@@ -20,8 +20,7 @@
#ifndef INCLUDED_IDL_INC_HASH_HXX
#define INCLUDED_IDL_INC_HASH_HXX
-#include <rtl/ustring.hxx>
-#include <tools/ref.hxx>
+#include <rtl/string.hxx>
#include <tools/solar.h>
#include <unordered_map>
#include <memory>
diff --git a/idl/inc/module.hxx b/idl/inc/module.hxx
index 05587ee9681e..08c14cc9c2b2 100644
--- a/idl/inc/module.hxx
+++ b/idl/inc/module.hxx
@@ -20,7 +20,6 @@
#ifndef INCLUDED_IDL_INC_MODULE_HXX
#define INCLUDED_IDL_INC_MODULE_HXX
-#include "slot.hxx"
#include "object.hxx"
class SvMetaModule final : public SvMetaObject
diff --git a/idl/inc/object.hxx b/idl/inc/object.hxx
index 6beb837688c2..8d16ca563c74 100644
--- a/idl/inc/object.hxx
+++ b/idl/inc/object.hxx
@@ -21,7 +21,9 @@
#define INCLUDED_IDL_INC_OBJECT_HXX
#include "types.hxx"
-#include "slot.hxx"
+
+#include <tools/solar.h>
+
#include <vector>
class SvMetaClass;
diff --git a/idl/inc/slot.hxx b/idl/inc/slot.hxx
index 1b8eec2ab66a..f8ba61d98fa3 100644
--- a/idl/inc/slot.hxx
+++ b/idl/inc/slot.hxx
@@ -21,7 +21,8 @@
#define INCLUDED_IDL_INC_SLOT_HXX
#include "types.hxx"
-#include "command.hxx"
+
+#include <tools/solar.h>
class SvMetaSlot : public SvMetaAttribute
{
diff --git a/idl/inc/types.hxx b/idl/inc/types.hxx
index 1648efc3d56a..badab618e605 100644
--- a/idl/inc/types.hxx
+++ b/idl/inc/types.hxx
@@ -21,7 +21,6 @@
#define INCLUDED_IDL_INC_TYPES_HXX
#include <rtl/strbuf.hxx>
-#include <tools/solar.h>
#include <tools/ref.hxx>
#include "basobj.hxx"
diff --git a/idl/source/cmptools/hash.cxx b/idl/source/cmptools/hash.cxx
index c294a1c14755..d3993881a6ba 100644
--- a/idl/source/cmptools/hash.cxx
+++ b/idl/source/cmptools/hash.cxx
@@ -18,14 +18,9 @@
*/
-// C and C++ includes
-#include <stdlib.h>
-
// program-sensitive includes
#include <hash.hxx>
-#include <rtl/character.hxx>
-
SvStringHashEntry * SvStringHashTable::Insert( const OString& rElement, sal_uInt32 * pInsertPos )
{
auto it = maString2IntMap.find(rElement);
diff --git a/idl/source/objects/basobj.cxx b/idl/source/objects/basobj.cxx
index 551e002d046a..872b42b391ed 100644
--- a/idl/source/objects/basobj.cxx
+++ b/idl/source/objects/basobj.cxx
@@ -22,8 +22,6 @@
#include <rtl/character.hxx>
#include <basobj.hxx>
-#include <module.hxx>
-#include <globals.hxx>
#include <database.hxx>
void SvMetaObject::WriteTab( SvStream & rOutStm, sal_uInt16 nTab )
diff --git a/idl/source/objects/bastype.cxx b/idl/source/objects/bastype.cxx
index c68fa513ef0f..6a36db617f54 100644
--- a/idl/source/objects/bastype.cxx
+++ b/idl/source/objects/bastype.cxx
@@ -18,13 +18,10 @@
*/
-#include <limits.h>
#include <bastype.hxx>
#include <lex.hxx>
-#include <globals.hxx>
#include <hash.hxx>
#include <database.hxx>
-#include <tools/stream.hxx>
bool SvBOOL::ReadSvIdl( SvStringHashEntry const * pName, SvTokenStream & rInStm )
{
diff --git a/idl/source/objects/module.cxx b/idl/source/objects/module.cxx
index e97dd29d651c..dc692f6081c6 100644
--- a/idl/source/objects/module.cxx
+++ b/idl/source/objects/module.cxx
@@ -18,9 +18,7 @@
*/
#include <module.hxx>
-#include <globals.hxx>
#include <database.hxx>
-#include <osl/file.hxx>
SvMetaModule::SvMetaModule() {}
diff --git a/idl/source/objects/object.cxx b/idl/source/objects/object.cxx
index 6fc0a5e0af7c..510d3a8a791d 100644
--- a/idl/source/objects/object.cxx
+++ b/idl/source/objects/object.cxx
@@ -22,12 +22,12 @@
#include <algorithm>
#include <rtl/strbuf.hxx>
-#include <osl/diagnose.h>
#include <sal/log.hxx>
#include <object.hxx>
#include <globals.hxx>
#include <database.hxx>
+#include <slot.hxx>
SvClassElement::SvClassElement()
diff --git a/idl/source/objects/slot.cxx b/idl/source/objects/slot.cxx
index 6b4c65a1bcac..17b8970edc8a 100644
--- a/idl/source/objects/slot.cxx
+++ b/idl/source/objects/slot.cxx
@@ -17,7 +17,6 @@
* the License at http://www.apache.org/licenses/LICENSE-2.0 .
*/
-#include <rtl/strbuf.hxx>
#include <osl/diagnose.h>
#include <tools/debug.hxx>
#include <slot.hxx>
diff --git a/idl/source/prj/command.cxx b/idl/source/prj/command.cxx
index b665d792d8bb..15d08d99d39c 100644
--- a/idl/source/prj/command.cxx
+++ b/idl/source/prj/command.cxx
@@ -21,7 +21,6 @@
#include <stdlib.h>
#include <stdio.h>
-#include <string.h>
#include <osl/diagnose.h>
#include <rtl/character.hxx>
diff --git a/idl/source/prj/database.cxx b/idl/source/prj/database.cxx
index 4b0a58424558..9aba715edaf4 100644
--- a/idl/source/prj/database.cxx
+++ b/idl/source/prj/database.cxx
@@ -21,11 +21,12 @@
#include <algorithm>
#include <stdio.h>
-#include <stdlib.h>
#include <string_view>
+#include <command.hxx>
#include <database.hxx>
#include <globals.hxx>
+#include <slot.hxx>
#include <rtl/strbuf.hxx>
#include <osl/file.hxx>
diff --git a/idl/source/prj/globals.cxx b/idl/source/prj/globals.cxx
index 3e8160ac13ef..cf8d2ad44dcf 100644
--- a/idl/source/prj/globals.cxx
+++ b/idl/source/prj/globals.cxx
@@ -18,10 +18,8 @@
*/
#include <sal/config.h>
-#include <rtl/instance.hxx>
#include <globals.hxx>
-#include <database.hxx>
IdlDll & GetIdlApp()
{
diff --git a/idl/source/prj/parser.cxx b/idl/source/prj/parser.cxx
index 28652c736c39..3e53e9d35d93 100644
--- a/idl/source/prj/parser.cxx
+++ b/idl/source/prj/parser.cxx
@@ -24,6 +24,7 @@
#include <parser.hxx>
#include <database.hxx>
#include <globals.hxx>
+#include <slot.hxx>
#include <osl/file.hxx>
void SvIdlParser::ReadSvIdl( const OUString & rPath )
diff --git a/idl/source/prj/svidl.cxx b/idl/source/prj/svidl.cxx
index 91ad73d19336..efc6bf2946df 100644
--- a/idl/source/prj/svidl.cxx
+++ b/idl/source/prj/svidl.cxx
@@ -18,10 +18,8 @@
*/
-#include <stdlib.h>
#include <stdio.h>
#include <database.hxx>
-#include <globals.hxx>
#include <command.hxx>
#include <rtl/ustring.hxx>
#include <osl/file.hxx>
diff --git a/io/source/acceptor/acc_pipe.cxx b/io/source/acceptor/acc_pipe.cxx
index d95ea998e6c1..db43c58db103 100644
--- a/io/source/acceptor/acc_pipe.cxx
+++ b/io/source/acceptor/acc_pipe.cxx
@@ -24,7 +24,6 @@
#include <com/sun/star/io/IOException.hpp>
#include <osl/diagnose.h>
-#include <osl/mutex.hxx>
#include <cppuhelper/implbase.hxx>
#include <rtl/ref.hxx>
diff --git a/io/source/acceptor/acc_socket.cxx b/io/source/acceptor/acc_socket.cxx
index 9d4f6fe7fe85..d52fdc423bdf 100644
--- a/io/source/acceptor/acc_socket.cxx
+++ b/io/source/acceptor/acc_socket.cxx
@@ -22,7 +22,6 @@
#include <unordered_set>
#include <mutex>
-#include <rtl/ustrbuf.hxx>
#include <rtl/ref.hxx>
#include <com/sun/star/connection/XConnection.hpp>
#include <com/sun/star/connection/XConnectionBroadcaster.hpp>
diff --git a/io/source/connector/ctr_socket.cxx b/io/source/connector/ctr_socket.cxx
index a171dc9e7d3b..dcdeef07ff83 100644
--- a/io/source/connector/ctr_socket.cxx
+++ b/io/source/connector/ctr_socket.cxx
@@ -20,7 +20,6 @@
#include "connector.hxx"
#include <com/sun/star/io/IOException.hpp>
-#include <rtl/ustrbuf.hxx>
using namespace ::osl;
using namespace ::com::sun::star::uno;
diff --git a/javaunohelper/source/vm.cxx b/javaunohelper/source/vm.cxx
index c5f2c577417a..bdb2f58e7f1b 100644
--- a/javaunohelper/source/vm.cxx
+++ b/javaunohelper/source/vm.cxx
@@ -29,7 +29,6 @@
#include <cppuhelper/basemutex.hxx>
#include <jvmaccess/virtualmachine.hxx>
#include <jvmaccess/unovirtualmachine.hxx>
-#include <osl/mutex.hxx>
namespace {
diff --git a/jvmfwk/inc/fwkutil.hxx b/jvmfwk/inc/fwkutil.hxx
index e76a92769fc1..825355f42a47 100644
--- a/jvmfwk/inc/fwkutil.hxx
+++ b/jvmfwk/inc/fwkutil.hxx
@@ -22,7 +22,6 @@
#include <config_folders.h>
#include <sal/config.h>
-#include <sal/log.hxx>
#include <rtl/bootstrap.hxx>
#include <rtl/byteseq.hxx>
#include <osl/mutex.hxx>
diff --git a/jvmfwk/plugins/sunmajor/pluginlib/sunversion.cxx b/jvmfwk/plugins/sunmajor/pluginlib/sunversion.cxx
index 49157f033616..c420ad3f1581 100644
--- a/jvmfwk/plugins/sunmajor/pluginlib/sunversion.cxx
+++ b/jvmfwk/plugins/sunmajor/pluginlib/sunversion.cxx
@@ -21,6 +21,7 @@
#include "sunversion.hxx"
#include <osl/thread.h>
#include <rtl/character.hxx>
+#include <rtl/ustring.hxx>
#include <string.h>
namespace jfw_plugin { //stoc_javadetect
diff --git a/jvmfwk/plugins/sunmajor/pluginlib/sunversion.hxx b/jvmfwk/plugins/sunmajor/pluginlib/sunversion.hxx
index 6d2def297d4d..27d2aebcc6bc 100644
--- a/jvmfwk/plugins/sunmajor/pluginlib/sunversion.hxx
+++ b/jvmfwk/plugins/sunmajor/pluginlib/sunversion.hxx
@@ -24,8 +24,6 @@
#include <string_view>
-#include <rtl/ustring.hxx>
-
namespace jfw_plugin
{
/* SunVersion is used to compare java versions based on a string, as taken
diff --git a/jvmfwk/source/framework.cxx b/jvmfwk/source/framework.cxx
index 200724b5483f..4163eea57b7c 100644
--- a/jvmfwk/source/framework.cxx
+++ b/jvmfwk/source/framework.cxx
@@ -26,8 +26,10 @@
#include <rtl/ref.hxx>
#include <rtl/ustring.hxx>
#include <osl/diagnose.h>
+#ifdef _WIN32
#include <osl/file.hxx>
#include <osl/process.h>
+#endif
#include <osl/thread.hxx>
#include <jvmfwk/framework.hxx>
#include <vendorbase.hxx>
diff --git a/l10ntools/IwyuFilter_l10ntools.yaml b/l10ntools/IwyuFilter_l10ntools.yaml
new file mode 100644
index 000000000000..171e54ae6b22
--- /dev/null
+++ b/l10ntools/IwyuFilter_l10ntools.yaml
@@ -0,0 +1,9 @@
+---
+assumeFilename: l10ntools/source/helpmerge.cxx
+excludelist:
+ l10ntools/source/idxdict/idxdict.cxx:
+ # Actually needed
+ - fstream
+ l10ntools/source/xmlparse.cxx:
+ # Actually needed
+ - fstream
diff --git a/l10ntools/inc/cfgmerge.hxx b/l10ntools/inc/cfgmerge.hxx
index 3f4fdb55c947..8c7e90720081 100644
--- a/l10ntools/inc/cfgmerge.hxx
+++ b/l10ntools/inc/cfgmerge.hxx
@@ -27,6 +27,7 @@
#include <memory>
#include <vector>
#include "po.hxx"
+#include "export.hxx"
typedef std::unordered_map<OString, OString> OStringHashMap;
diff --git a/l10ntools/inc/common.hxx b/l10ntools/inc/common.hxx
index 78bbbfdb83cc..ec5ed0c19586 100644
--- a/l10ntools/inc/common.hxx
+++ b/l10ntools/inc/common.hxx
@@ -14,7 +14,6 @@
#include <sal/config.h>
-#include <iostream>
#include <string_view>
#include <rtl/string.hxx>
diff --git a/l10ntools/inc/export.hxx b/l10ntools/inc/export.hxx
index 183cecea2531..64091d6cc5b8 100644
--- a/l10ntools/inc/export.hxx
+++ b/l10ntools/inc/export.hxx
@@ -21,27 +21,17 @@
#define INCLUDED_L10NTOOLS_INC_EXPORT_HXX
#include <sal/config.h>
-#include "po.hxx"
-#include <cstddef>
-#include <fstream>
+#include <rtl/string.hxx>
-#include <osl/file.hxx>
-#include <osl/file.h>
-
-#include <iterator>
#include <set>
#include <unordered_map>
#include <memory>
#include <vector>
-#include <queue>
-#include <string>
#include <string_view>
#ifdef _WIN32
#include <direct.h>
-#else
-#include <unistd.h>
#endif
#define NO_TRANSLATE_ISO "x-no-translate"
diff --git a/l10ntools/inc/helper.hxx b/l10ntools/inc/helper.hxx
index c63f781a5d91..fb0db0fc13f7 100644
--- a/l10ntools/inc/helper.hxx
+++ b/l10ntools/inc/helper.hxx
@@ -16,12 +16,9 @@
#include <string_view>
-#include <sal/types.h>
-
-#include <libxml/parser.h>
+#include <libxml/xmlstring.h>
#include <rtl/string.hxx>
-#include <rtl/strbuf.hxx>
namespace helper {
diff --git a/l10ntools/inc/helpmerge.hxx b/l10ntools/inc/helpmerge.hxx
index 3f9426b6b4de..9420f2356b2f 100644
--- a/l10ntools/inc/helpmerge.hxx
+++ b/l10ntools/inc/helpmerge.hxx
@@ -24,10 +24,10 @@
#include <string_view>
+#include "export.hxx"
#include "xmlparse.hxx"
-#include <rtl/ustring.hxx>
-#include <rtl/ustrbuf.hxx>
-#include <rtl/strbuf.hxx>
+
+#include <rtl/string.hxx>
/// This Class is responsible for extracting/merging OpenOffice XML Helpfiles
class HelpParser
diff --git a/l10ntools/inc/lngmerge.hxx b/l10ntools/inc/lngmerge.hxx
index 56eaec71b11d..89f383d92ab7 100644
--- a/l10ntools/inc/lngmerge.hxx
+++ b/l10ntools/inc/lngmerge.hxx
@@ -22,11 +22,10 @@
#include <sal/config.h>
-#include <iosfwd>
#include <vector>
-#include "common.hxx"
#include "export.hxx"
+#include "po.hxx"
#define LNG_OK 0x0000
#define LNG_COULD_NOT_OPEN 0x0001
diff --git a/l10ntools/inc/treemerge.hxx b/l10ntools/inc/treemerge.hxx
index 63791b4655a9..8e87188d8b69 100644
--- a/l10ntools/inc/treemerge.hxx
+++ b/l10ntools/inc/treemerge.hxx
@@ -12,7 +12,6 @@
#include <libxml/tree.h>
#include <rtl/string.hxx>
-#include <vector>
/**
Class for localization of *.tree files
diff --git a/l10ntools/inc/xmlparse.hxx b/l10ntools/inc/xmlparse.hxx
index a9993f460b5c..9a8b1e673213 100644
--- a/l10ntools/inc/xmlparse.hxx
+++ b/l10ntools/inc/xmlparse.hxx
@@ -26,14 +26,10 @@
#include <memory>
#include <vector>
-#include <signal.h>
-
-#include <libxml/xmlexports.h>
#include <expat.h>
#include <rtl/string.hxx>
#include <rtl/strbuf.hxx>
-#include "export.hxx"
#include <unordered_map>
class XMLParentNode;
diff --git a/l10ntools/inc/xrmmerge.hxx b/l10ntools/inc/xrmmerge.hxx
index 7468f43f6122..4225f44d12b8 100644
--- a/l10ntools/inc/xrmmerge.hxx
+++ b/l10ntools/inc/xrmmerge.hxx
@@ -26,6 +26,11 @@
#include <fstream>
#include <string_view>
+#include <rtl/string.hxx>
+
+#include "export.hxx"
+#include "po.hxx"
+
/// Parser for *.xrm and description.xml files
class XRMResParser
{
diff --git a/l10ntools/source/cfgmerge.cxx b/l10ntools/source/cfgmerge.cxx
index 3fc24d50d5ca..69fbd3777f85 100644
--- a/l10ntools/source/cfgmerge.cxx
+++ b/l10ntools/source/cfgmerge.cxx
@@ -24,8 +24,7 @@
#include <cstdio>
#include <cstdlib>
-#include <cstring>
-
+#include <iostream>
#include <memory>
#include <rtl/strbuf.hxx>
diff --git a/l10ntools/source/common.cxx b/l10ntools/source/common.cxx
index e2d14ac36431..4cc9ba6405a9 100644
--- a/l10ntools/source/common.cxx
+++ b/l10ntools/source/common.cxx
@@ -7,6 +7,8 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
*/
+#include <iostream>
+
#include <common.hxx>
namespace {
diff --git a/l10ntools/source/helper.cxx b/l10ntools/source/helper.cxx
index 767c04eb5152..b8df012dc149 100644
--- a/l10ntools/source/helper.cxx
+++ b/l10ntools/source/helper.cxx
@@ -9,7 +9,10 @@
#include <sal/config.h>
+#include <libxml/parser.h>
+
#include <o3tl/safeint.hxx>
+#include <rtl/strbuf.hxx>
#include <helper.hxx>
diff --git a/l10ntools/source/helpex.cxx b/l10ntools/source/helpex.cxx
index c81fce12ca74..e9f744a95bbc 100644
--- a/l10ntools/source/helpex.cxx
+++ b/l10ntools/source/helpex.cxx
@@ -20,7 +20,6 @@
#include <sal/config.h>
#include <iostream>
-#include <fstream>
#include <string>
#include <cstring>
diff --git a/l10ntools/source/helpmerge.cxx b/l10ntools/source/helpmerge.cxx
index ed5e1c8777aa..42cdb6ce19ab 100644
--- a/l10ntools/source/helpmerge.cxx
+++ b/l10ntools/source/helpmerge.cxx
@@ -20,21 +20,14 @@
#include <sal/config.h>
#include <fstream>
-#include <functional>
-#include <memory>
-#include <osl/file.hxx>
#include <sal/log.hxx>
#include <stdio.h>
#include <stdlib.h>
#include <helpmerge.hxx>
-#include <algorithm>
-#include <sys/types.h>
-#include <sys/stat.h>
-#include <iostream>
#include <vector>
-#include <rtl/strbuf.hxx>
+
#ifdef _WIN32
#if !defined WIN32_LEAN_AND_MEAN
# define WIN32_LEAN_AND_MEAN
diff --git a/l10ntools/source/lngex.cxx b/l10ntools/source/lngex.cxx
index 7435c063ed1c..2d7c413ad1ed 100644
--- a/l10ntools/source/lngex.cxx
+++ b/l10ntools/source/lngex.cxx
@@ -21,6 +21,8 @@
#include <sal/main.h>
+#include <common.hxx>
+
#include <lngmerge.hxx>
SAL_IMPLEMENT_MAIN_WITH_ARGS(argc, argv)
diff --git a/l10ntools/source/lngmerge.cxx b/l10ntools/source/lngmerge.cxx
index 33794a377c2b..530bda4cfc5d 100644
--- a/l10ntools/source/lngmerge.cxx
+++ b/l10ntools/source/lngmerge.cxx
@@ -20,11 +20,11 @@
#include <sal/config.h>
#include <cstddef>
-#include <fstream>
-#include <iterator>
+#include <iostream>
#include <memory>
#include <string>
+#include <common.hxx>
#include <po.hxx>
#include <lngmerge.hxx>
diff --git a/l10ntools/source/localize.cxx b/l10ntools/source/localize.cxx
index a5a1b2c3b3ef..8dc1f26422ac 100644
--- a/l10ntools/source/localize.cxx
+++ b/l10ntools/source/localize.cxx
@@ -20,7 +20,6 @@
#include <sal/config.h>
#include <cassert>
-#include <cstddef>
#include <cstdlib>
#include <iostream>
#include <string>
diff --git a/l10ntools/source/po.cxx b/l10ntools/source/po.cxx
index dfe013cb9b7c..a29fb4fe98dd 100644
--- a/l10ntools/source/po.cxx
+++ b/l10ntools/source/po.cxx
@@ -8,6 +8,7 @@
*/
#include <rtl/ustring.hxx>
+#include <rtl/strbuf.hxx>
#include <rtl/crc.h>
#include <sal/log.hxx>
diff --git a/l10ntools/source/propmerge.cxx b/l10ntools/source/propmerge.cxx
index 8c6da8e93b54..2e2cf19e4cc6 100644
--- a/l10ntools/source/propmerge.cxx
+++ b/l10ntools/source/propmerge.cxx
@@ -7,11 +7,12 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
*/
+#include <rtl/ustring.hxx>
+
#include <memory>
#include <cstdlib>
#include <cassert>
#include <iostream>
-#include <fstream>
#include <iomanip>
#include <string_view>
diff --git a/l10ntools/source/treemerge.cxx b/l10ntools/source/treemerge.cxx
index 2920734eea4d..b50311cce6af 100644
--- a/l10ntools/source/treemerge.cxx
+++ b/l10ntools/source/treemerge.cxx
@@ -8,13 +8,11 @@
*/
#include <iostream>
-#include <fstream>
#include <cassert>
#include <cstring>
#include <libxml/tree.h>
#include <libxml/parser.h>
-#include <libxml/xmlmemory.h>
#include <libxml/xmlstring.h>
#include <export.hxx>
diff --git a/l10ntools/source/xmlparse.cxx b/l10ntools/source/xmlparse.cxx
index 10f52fdcb3d7..7e067f7f039b 100644
--- a/l10ntools/source/xmlparse.cxx
+++ b/l10ntools/source/xmlparse.cxx
@@ -18,19 +18,17 @@
*/
#include <sal/config.h>
-#include <iterator> /* std::iterator*/
-
#include <cassert>
#include <stdio.h>
#include <string_view>
#include <helper.hxx>
-#include <common.hxx>
#include <xmlparse.hxx>
#include <fstream>
#include <iostream>
-#include <osl/thread.hxx>
+#include <osl/file.hxx>
#include <osl/process.h>
+#include <rtl/ustring.hxx>
#include <rtl/strbuf.hxx>
#include <unicode/regex.h>
diff --git a/l10ntools/source/xrmmerge.cxx b/l10ntools/source/xrmmerge.cxx
index d1dc5bb4dcd2..b7a7e0042c01 100644
--- a/l10ntools/source/xrmmerge.cxx
+++ b/l10ntools/source/xrmmerge.cxx
@@ -19,8 +19,6 @@
#include <sal/config.h>
-#include <cstring>
-
#include <stdio.h>
#include <common.hxx>
@@ -31,7 +29,6 @@
#include <tokens.h>
#include <helper.hxx>
#include <iostream>
-#include <fstream>
#include <vector>
#include <memory>
diff --git a/libreofficekit/qa/gtktiledviewer/gtv-lok-dialog.cxx b/libreofficekit/qa/gtktiledviewer/gtv-lok-dialog.cxx
index 4d889645b2fc..f23148eaf2f9 100644
--- a/libreofficekit/qa/gtktiledviewer/gtv-lok-dialog.cxx
+++ b/libreofficekit/qa/gtktiledviewer/gtv-lok-dialog.cxx
@@ -11,7 +11,6 @@
#include <gdk/gdkkeysyms.h>
#include <iostream>
-#include <sstream>
#include <LibreOfficeKit/LibreOfficeKitGtk.h>
#include <LibreOfficeKit/LibreOfficeKitEnums.h>
diff --git a/libreofficekit/qa/unit/checkapi.cxx b/libreofficekit/qa/unit/checkapi.cxx
index acf00e0b9cb1..ec4a718366e9 100644
--- a/libreofficekit/qa/unit/checkapi.cxx
+++ b/libreofficekit/qa/unit/checkapi.cxx
@@ -11,10 +11,9 @@
#error Build system problem; LIBO_INTERNAL_ONLY should not be defined here
#endif
-#include <LibreOfficeKit/LibreOfficeKit.hxx>
-
#include <sal/config.h>
-#include <sal/saldllapi.h>
+#include <sal/types.h>
+
#include <cppunit/plugin/TestPlugIn.h>
CPPUNIT_PLUGIN_IMPLEMENT();
diff --git a/libreofficekit/qa/unit/test.h b/libreofficekit/qa/unit/test.h
index ea44b9d391ec..f29db13bb85b 100644
--- a/libreofficekit/qa/unit/test.h
+++ b/libreofficekit/qa/unit/test.h
@@ -10,6 +10,8 @@
#ifndef INCLUDED_LIBREOFFICEKIT_QA_TEST_H
#define INCLUDED_LIBREOFFICEKIT_QA_TEST_H
+#include <LibreOfficeKit/LibreOfficeKit.h>
+
LibreOfficeKit* compile_test(void);
#endif // INCLUDED_LIBREOFFICEKIT_QA_TEST_H
diff --git a/lingucomponent/IwyuFilter_lingucomponent.yaml b/lingucomponent/IwyuFilter_lingucomponent.yaml
new file mode 100644
index 000000000000..ebea8246ccca
--- /dev/null
+++ b/lingucomponent/IwyuFilter_lingucomponent.yaml
@@ -0,0 +1,20 @@
+---
+assumeFilename: lingucomponent/source/spellcheck/spell/sspellimp.cxx
+excludelist:
+ lingucomponent/source/lingutil/lingutil.hxx:
+ # Needed on WIN
+ - rtl/string.hxx
+ lingucomponent/source/languageguessing/guesslang.cxx:
+ # Needed for code protected by EXTTEXTCAT_VERSION_MAJOR
+ - libexttextcat/textcat.h
+ - tools/debug.hxx
+ - sal/macros.h
+ lingucomponent/source/numbertext/numbertext.cxx:
+ # Needed on WIN
+ - o3tl/char16_t2wchar_t.hxx
+ lingucomponent/source/spellcheck/spell/sspellimp.cxx:
+ # Needed for SpellFailure::SPELLING_ERROR
+ - com/sun/star/linguistic2/SpellFailure.hpp
+ lingucomponent/source/hyphenator/hyphen/hyphenimp.cxx:
+ # Actually used
+ - com/sun/star/linguistic2/XLinguProperties.hpp
diff --git a/lingucomponent/source/hyphenator/hyphen/hyphenimp.cxx b/lingucomponent/source/hyphenator/hyphen/hyphenimp.cxx
index 3163b631e9cd..9ccc1210956a 100644
--- a/lingucomponent/source/hyphenator/hyphen/hyphenimp.cxx
+++ b/lingucomponent/source/hyphenator/hyphen/hyphenimp.cxx
@@ -23,8 +23,6 @@
#include <cppuhelper/factory.hxx>
#include <cppuhelper/supportsservice.hxx>
#include <cppuhelper/weak.hxx>
-#include <com/sun/star/registry/XRegistryKey.hpp>
-#include <com/sun/star/lang/XSingleServiceFactory.hpp>
#include <com/sun/star/linguistic2/XLinguProperties.hpp>
#include <i18nlangtag/languagetag.hxx>
#include <tools/debug.hxx>
@@ -40,12 +38,9 @@
#include <rtl/textenc.h>
#include <sal/log.hxx>
-#include <linguistic/lngprops.hxx>
#include <linguistic/misc.hxx>
#include <svtools/strings.hrc>
#include <unotools/charclass.hxx>
-#include <unotools/pathoptions.hxx>
-#include <unotools/useroptions.hxx>
#include <unotools/lingucfg.hxx>
#include <unotools/resmgr.hxx>
#include <osl/file.hxx>
diff --git a/lingucomponent/source/languageguessing/guess.cxx b/lingucomponent/source/languageguessing/guess.cxx
index e6eb506eb6fe..a7cbeccabc98 100644
--- a/lingucomponent/source/languageguessing/guess.cxx
+++ b/lingucomponent/source/languageguessing/guess.cxx
@@ -20,7 +20,6 @@
#include <sal/config.h>
#include <cassert>
-#include <iostream>
#include <string.h>
#ifdef SYSTEM_LIBEXTTEXTCAT
diff --git a/lingucomponent/source/languageguessing/guesslang.cxx b/lingucomponent/source/languageguessing/guesslang.cxx
index 987642538f0e..d6d5803a51a7 100644
--- a/lingucomponent/source/languageguessing/guesslang.cxx
+++ b/lingucomponent/source/languageguessing/guesslang.cxx
@@ -26,7 +26,6 @@
#include <sal/config.h>
#include <cppuhelper/factory.hxx>
-#include <cppuhelper/implementationentry.hxx>
#include <cppuhelper/implbase.hxx>
#include <cppuhelper/supportsservice.hxx>
diff --git a/lingucomponent/source/languageguessing/simpleguesser.cxx b/lingucomponent/source/languageguessing/simpleguesser.cxx
index 8c370b576315..7b4d9f1119ad 100644
--- a/lingucomponent/source/languageguessing/simpleguesser.cxx
+++ b/lingucomponent/source/languageguessing/simpleguesser.cxx
@@ -28,21 +28,17 @@
*/
#include <string.h>
-#include <sstream>
-#include <iostream>
#ifdef SYSTEM_LIBEXTTEXTCAT
#include <libexttextcat/textcat.h>
#include <libexttextcat/common.h>
#include <libexttextcat/constants.h>
#include <libexttextcat/fingerprint.h>
-#include <libexttextcat/utf8misc.h>
#else
#include <textcat.h>
#include <common.h>
#include <constants.h>
#include <fingerprint.h>
-#include <utf8misc.h>
#endif
#include <sal/types.h>
diff --git a/lingucomponent/source/languageguessing/simpleguesser.hxx b/lingucomponent/source/languageguessing/simpleguesser.hxx
index d6b88d1d67b9..aec5442853b1 100644
--- a/lingucomponent/source/languageguessing/simpleguesser.hxx
+++ b/lingucomponent/source/languageguessing/simpleguesser.hxx
@@ -19,9 +19,7 @@
#ifndef INCLUDED_LINGUCOMPONENT_SOURCE_LANGUAGEGUESSING_SIMPLEGUESSER_HXX
#define INCLUDED_LINGUCOMPONENT_SOURCE_LANGUAGEGUESSING_SIMPLEGUESSER_HXX
-#include <string.h>
#include <string>
-#include <cstdlib>
#include <vector>
#include "guess.hxx"
diff --git a/lingucomponent/source/lingutil/lingutil.hxx b/lingucomponent/source/lingutil/lingutil.hxx
index 984b5e2e8902..4c4fe15ec47f 100644
--- a/lingucomponent/source/lingutil/lingutil.hxx
+++ b/lingucomponent/source/lingutil/lingutil.hxx
@@ -20,9 +20,7 @@
#ifndef INCLUDED_LINGUCOMPONENT_SOURCE_LINGUTIL_LINGUTIL_HXX
#define INCLUDED_LINGUCOMPONENT_SOURCE_LINGUTIL_LINGUTIL_HXX
-#include <com/sun/star/lang/Locale.hpp>
#include <rtl/string.hxx>
-#include <rtl/ustring.hxx>
#include <vector>
diff --git a/lingucomponent/source/numbertext/numbertext.cxx b/lingucomponent/source/numbertext/numbertext.cxx
index f878a55f591c..79c8e6810041 100644
--- a/lingucomponent/source/numbertext/numbertext.cxx
+++ b/lingucomponent/source/numbertext/numbertext.cxx
@@ -17,7 +17,6 @@
* the License at http://www.apache.org/licenses/LICENSE-2.0 .
*/
-#include <iostream>
#include <mutex>
#include <osl/file.hxx>
@@ -26,19 +25,15 @@
#include <sal/config.h>
#include <cppuhelper/factory.hxx>
-#include <cppuhelper/implementationentry.hxx>
#include <cppuhelper/implbase.hxx>
#include <cppuhelper/supportsservice.hxx>
#include <i18nlangtag/languagetag.hxx>
-#include <com/sun/star/lang/IllegalArgumentException.hpp>
#include <com/sun/star/lang/XServiceInfo.hpp>
#include <com/sun/star/linguistic2/XNumberText.hpp>
#include <unotools/pathoptions.hxx>
#include <osl/thread.h>
-#include <sal/macros.h>
-
#include <Numbertext.hxx>
using namespace ::osl;
diff --git a/lingucomponent/source/spellcheck/spell/sspellimp.cxx b/lingucomponent/source/spellcheck/spell/sspellimp.cxx
index 843dcfb28585..95b264157533 100644
--- a/lingucomponent/source/spellcheck/spell/sspellimp.cxx
+++ b/lingucomponent/source/spellcheck/spell/sspellimp.cxx
@@ -23,12 +23,9 @@
#include <com/sun/star/linguistic2/XLinguProperties.hpp>
#include <comphelper/lok.hxx>
#include <comphelper/processfactory.hxx>
-#include <cppuhelper/factory.hxx>
#include <cppuhelper/supportsservice.hxx>
#include <cppuhelper/weak.hxx>
-#include <com/sun/star/lang/XSingleServiceFactory.hpp>
#include <com/sun/star/lang/XMultiServiceFactory.hpp>
-#include <com/sun/star/registry/XRegistryKey.hpp>
#include <tools/debug.hxx>
#include <osl/mutex.hxx>
#include <osl/thread.h>
@@ -38,14 +35,12 @@
#include <hunspell.hxx>
#include "sspellimp.hxx"
-#include <linguistic/lngprops.hxx>
+#include <linguistic/misc.hxx>
#include <linguistic/spelldta.hxx>
#include <i18nlangtag/languagetag.hxx>
#include <svtools/strings.hrc>
-#include <unotools/pathoptions.hxx>
#include <unotools/lingucfg.hxx>
#include <unotools/resmgr.hxx>
-#include <unotools/useroptions.hxx>
#include <osl/file.hxx>
#include <rtl/ustrbuf.hxx>
#include <rtl/textenc.h>
diff --git a/lingucomponent/source/spellcheck/spell/sspellimp.hxx b/lingucomponent/source/spellcheck/spell/sspellimp.hxx
index c4c002b9ead1..000f1756f5bc 100644
--- a/lingucomponent/source/spellcheck/spell/sspellimp.hxx
+++ b/lingucomponent/source/spellcheck/spell/sspellimp.hxx
@@ -25,25 +25,22 @@
#include <com/sun/star/lang/XComponent.hpp>
#include <com/sun/star/lang/XInitialization.hpp>
#include <com/sun/star/lang/XServiceDisplayName.hpp>
-#include <com/sun/star/beans/XPropertySet.hpp>
-#include <com/sun/star/beans/PropertyValues.hpp>
+#include <com/sun/star/beans/PropertyValue.hpp>
#include <com/sun/star/lang/XServiceInfo.hpp>
#include <com/sun/star/linguistic2/XSpellChecker.hpp>
#include <com/sun/star/linguistic2/XLinguServiceEventBroadcaster.hpp>
-#include <linguistic/misc.hxx>
#include <linguistic/lngprophelp.hxx>
-#include <lingutil.hxx>
#include <memory>
+#include <hunspell.hxx>
+
using namespace ::com::sun::star::uno;
using namespace ::com::sun::star::beans;
using namespace ::com::sun::star::lang;
using namespace ::com::sun::star::linguistic2;
-class Hunspell;
-
class SpellChecker :
public cppu::WeakImplHelper
<
diff --git a/lingucomponent/source/thesaurus/libnth/nthesimp.cxx b/lingucomponent/source/thesaurus/libnth/nthesimp.cxx
index 6fc64f781267..ca29cca2ac52 100644
--- a/lingucomponent/source/thesaurus/libnth/nthesimp.cxx
+++ b/lingucomponent/source/thesaurus/libnth/nthesimp.cxx
@@ -21,9 +21,6 @@
#include <cppuhelper/factory.hxx>
#include <cppuhelper/supportsservice.hxx>
#include <cppuhelper/weak.hxx>
-#include <com/sun/star/lang/XSingleServiceFactory.hpp>
-#include <com/sun/star/registry/XRegistryKey.hpp>
-#include <com/sun/star/beans/XPropertySet.hpp>
#include <com/sun/star/linguistic2/LinguServiceManager.hpp>
#include <com/sun/star/linguistic2/XLinguProperties.hpp>
#include <com/sun/star/linguistic2/XSpellChecker1.hpp>
@@ -34,19 +31,16 @@
#include <comphelper/sequence.hxx>
#include <osl/mutex.hxx>
#include <osl/thread.h>
-#include <unotools/pathoptions.hxx>
#include <unotools/lingucfg.hxx>
#include <unotools/resmgr.hxx>
#include <rtl/string.hxx>
-#include <rtl/ustrbuf.hxx>
#include <rtl/textenc.h>
#include <svtools/strings.hrc>
#include "nthesimp.hxx"
#include <linguistic/misc.hxx>
-#include <linguistic/lngprops.hxx>
#include "nthesdta.hxx"
#include <vector>
diff --git a/linguistic/IwyuFilter_linguistic.yaml b/linguistic/IwyuFilter_linguistic.yaml
index 40c2b48352eb..07a9a54a59f8 100644
--- a/linguistic/IwyuFilter_linguistic.yaml
+++ b/linguistic/IwyuFilter_linguistic.yaml
@@ -4,3 +4,6 @@ excludelist:
linguistic/source/hyphdsp.cxx:
# Needed for direct member access
- com/sun/star/linguistic2/XLinguProperties.hpp
+ linguistic/source/convdic.cxx:
+ # Actually used
+ - com/sun/star/util/XFlushListener.hpp
diff --git a/linguistic/source/dlistimp.cxx b/linguistic/source/dlistimp.cxx
index b7fbfa1844ab..53be03d9d20a 100644
--- a/linguistic/source/dlistimp.cxx
+++ b/linguistic/source/dlistimp.cxx
@@ -19,7 +19,6 @@
#include <cppuhelper/factory.hxx>
-#include <i18nlangtag/mslangid.hxx>
#include <osl/file.hxx>
#include <tools/debug.hxx>
#include <tools/stream.hxx>
diff --git a/linguistic/source/lngopt.hxx b/linguistic/source/lngopt.hxx
index b21ea631cc19..896e345edb74 100644
--- a/linguistic/source/lngopt.hxx
+++ b/linguistic/source/lngopt.hxx
@@ -21,7 +21,6 @@
#define INCLUDED_LINGUISTIC_SOURCE_LNGOPT_HXX
#include <cppuhelper/implbase.hxx>
-#include <cppuhelper/interfacecontainer.hxx>
#include <comphelper/interfacecontainer3.hxx>
#include <comphelper/multiinterfacecontainer3.hxx>
#include <com/sun/star/beans/XFastPropertySet.hpp>
diff --git a/linguistic/source/lngprophelp.cxx b/linguistic/source/lngprophelp.cxx
index bcc3f7a691a4..a14c96c9501e 100644
--- a/linguistic/source/lngprophelp.cxx
+++ b/linguistic/source/lngprophelp.cxx
@@ -19,7 +19,6 @@
#include <tools/debug.hxx>
-#include <sal/macros.h>
#include <sal/log.hxx>
#include <com/sun/star/linguistic2/LinguServiceEvent.hpp>
diff --git a/linguistic/source/lngsvcmgr.hxx b/linguistic/source/lngsvcmgr.hxx
index 5560fad69e14..76cb7d182ac9 100644
--- a/linguistic/source/lngsvcmgr.hxx
+++ b/linguistic/source/lngsvcmgr.hxx
@@ -34,7 +34,6 @@
#include <vcl/timer.hxx>
#include <vcl/idle.hxx>
#include <vector>
-#include <memory>
#include <optional>
class SpellCheckerDispatcher;
diff --git a/linguistic/source/misc.cxx b/linguistic/source/misc.cxx
index 0954c093238a..c1e4cc7757d0 100644
--- a/linguistic/source/misc.cxx
+++ b/linguistic/source/misc.cxx
@@ -38,13 +38,11 @@
#include <unotools/charclass.hxx>
#include <unotools/linguprops.hxx>
#include <unotools/localedatawrapper.hxx>
-#include <unotools/syslocale.hxx>
#include <svtools/strings.hrc>
#include <unotools/resmgr.hxx>
#include <linguistic/misc.hxx>
#include <linguistic/hyphdta.hxx>
-#include <mutex>
using namespace osl;
using namespace com::sun::star;
diff --git a/lotuswordpro/inc/xfilter/xfdrawobj.hxx b/lotuswordpro/inc/xfilter/xfdrawobj.hxx
index 66464fa1f86d..7a6425e28910 100644
--- a/lotuswordpro/inc/xfilter/xfdrawobj.hxx
+++ b/lotuswordpro/inc/xfilter/xfdrawobj.hxx
@@ -60,7 +60,6 @@
#ifndef INCLUDED_LOTUSWORDPRO_INC_XFILTER_XFDRAWOBJ_HXX
#define INCLUDED_LOTUSWORDPRO_INC_XFILTER_XFDRAWOBJ_HXX
-#include <xfilter/xfglobal.hxx>
#include <xfilter/xfframe.hxx>
#include <basegfx/numeric/ftools.hxx>
diff --git a/lotuswordpro/inc/xfilter/xfglobal.hxx b/lotuswordpro/inc/xfilter/xfglobal.hxx
index 60f1a798c588..173d17ffa350 100644
--- a/lotuswordpro/inc/xfilter/xfglobal.hxx
+++ b/lotuswordpro/inc/xfilter/xfglobal.hxx
@@ -62,7 +62,6 @@
#define INCLUDED_LOTUSWORDPRO_INC_XFILTER_XFGLOBAL_HXX
#include <rtl/ustring.hxx>
-#include <cmath>
#define FLOAT_MIN 0.001
#define MAX2(a, b) (((a) > (b)) ? (a) : (b))
diff --git a/lotuswordpro/inc/xfilter/xfrow.hxx b/lotuswordpro/inc/xfilter/xfrow.hxx
index 3f419b3dfdc1..df4d001dc492 100644
--- a/lotuswordpro/inc/xfilter/xfrow.hxx
+++ b/lotuswordpro/inc/xfilter/xfrow.hxx
@@ -62,7 +62,6 @@
#include <xfilter/xfcell.hxx>
#include <xfilter/xfcontent.hxx>
#include <rtl/ref.hxx>
-#include <map>
class XFCell;
class XFTable;
diff --git a/lotuswordpro/source/filter/lwpdoc.cxx b/lotuswordpro/source/filter/lwpdoc.cxx
index d83b37500d9a..b6955b48978a 100644
--- a/lotuswordpro/source/filter/lwpdoc.cxx
+++ b/lotuswordpro/source/filter/lwpdoc.cxx
@@ -54,12 +54,12 @@
*
************************************************************************/
#include <lwpglobalmgr.hxx>
+#include "lwpcharacterstyle.hxx"
#include "lwpdoc.hxx"
#include "lwpfootnote.hxx"
#include "lwppagehint.hxx"
#include "lwpdivinfo.hxx"
#include "lwpholder.hxx"
-#include "lwpparastyle.hxx"
#include "lwpstory.hxx"
#include "lwpsilverbullet.hxx"
#include "lwpsortopt.hxx"
diff --git a/lotuswordpro/source/filter/lwpdrawobj.cxx b/lotuswordpro/source/filter/lwpdrawobj.cxx
index 2dc4d5cdee9c..1ad3a5329002 100644
--- a/lotuswordpro/source/filter/lwpdrawobj.cxx
+++ b/lotuswordpro/source/filter/lwpdrawobj.cxx
@@ -67,6 +67,7 @@
#include <xfilter/xfframe.hxx>
+#include <xfilter/xfglobal.hxx>
#include <xfilter/xfstylemanager.hxx>
#include <xfilter/xfdrawstyle.hxx>
#include <xfilter/xfparastyle.hxx>
diff --git a/lotuswordpro/source/filter/lwptablelayout.hxx b/lotuswordpro/source/filter/lwptablelayout.hxx
index ca4d46812e55..beee6acb6c16 100644
--- a/lotuswordpro/source/filter/lwptablelayout.hxx
+++ b/lotuswordpro/source/filter/lwptablelayout.hxx
@@ -308,8 +308,6 @@ protected:
void Read() override;
};
-#include "lwpcelllayout.hxx"
-
#endif
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */