[Libreoffice-commits] core.git: i18npool/inc i18npool/IwyuFilter_i18npool.yaml i18npool/qa i18npool/source

Gabor Kelemen (via logerrit) logerrit at kemper.freedesktop.org
Tue May 28 10:08:08 UTC 2019


 i18npool/IwyuFilter_i18npool.yaml                                       |   94 ++++++++++
 i18npool/inc/breakiteratorImpl.hxx                                      |   11 -
 i18npool/inc/breakiterator_th.hxx                                       |    1 
 i18npool/inc/breakiterator_unicode.hxx                                  |    4 
 i18npool/inc/calendarImpl.hxx                                           |    5 
 i18npool/inc/calendar_gregorian.hxx                                     |    4 
 i18npool/inc/cclass_unicode.hxx                                         |    6 
 i18npool/inc/chaptercollator.hxx                                        |    3 
 i18npool/inc/characterclassificationImpl.hxx                            |    4 
 i18npool/inc/collatorImpl.hxx                                           |    6 
 i18npool/inc/defaultnumberingprovider.hxx                               |    8 
 i18npool/inc/indexentrysupplier.hxx                                     |    3 
 i18npool/inc/indexentrysupplier_common.hxx                              |    4 
 i18npool/inc/inputsequencechecker.hxx                                   |    4 
 i18npool/inc/localedata.hxx                                             |   23 --
 i18npool/inc/nativenumbersupplier.hxx                                   |    4 
 i18npool/inc/numberformatcode.hxx                                       |    7 
 i18npool/inc/ordinalsuffix.hxx                                          |    3 
 i18npool/inc/textToPronounce_zh.hxx                                     |    2 
 i18npool/inc/textconversion.hxx                                         |    8 
 i18npool/inc/textconversionImpl.hxx                                     |    4 
 i18npool/inc/transliterationImpl.hxx                                    |    5 
 i18npool/inc/transliteration_Ignore.hxx                                 |    3 
 i18npool/inc/transliteration_OneToOne.hxx                               |    3 
 i18npool/inc/transliteration_commonclass.hxx                            |    2 
 i18npool/inc/xdictionary.hxx                                            |    1 
 i18npool/qa/cppunit/test_breakiterator.cxx                              |    5 
 i18npool/qa/cppunit/test_characterclassification.cxx                    |    7 
 i18npool/qa/cppunit/test_textsearch.cxx                                 |    6 
 i18npool/source/breakiterator/breakiteratorImpl.cxx                     |    5 
 i18npool/source/breakiterator/breakiterator_cjk.cxx                     |    4 
 i18npool/source/breakiterator/breakiterator_th.cxx                      |    1 
 i18npool/source/breakiterator/breakiterator_unicode.cxx                 |    5 
 i18npool/source/breakiterator/gendict.cxx                               |    1 
 i18npool/source/breakiterator/xdictionary.cxx                           |    2 
 i18npool/source/calendar/calendarImpl.cxx                               |    2 
 i18npool/source/calendar/calendar_gregorian.cxx                         |    8 
 i18npool/source/calendar/calendar_hijri.cxx                             |    1 
 i18npool/source/calendar/calendar_jewish.cxx                            |    7 
 i18npool/source/characterclassification/cclass_unicode.cxx              |    4 
 i18npool/source/characterclassification/cclass_unicode_parser.cxx       |    1 
 i18npool/source/characterclassification/characterclassificationImpl.cxx |    3 
 i18npool/source/characterclassification/unoscripttypedetector.cxx       |    3 
 i18npool/source/collator/collatorImpl.cxx                               |    1 
 i18npool/source/defaultnumberingprovider/defaultnumberingprovider.cxx   |    9 
 i18npool/source/indexentry/indexentrysupplier.cxx                       |    3 
 i18npool/source/indexentry/indexentrysupplier_asian.cxx                 |    1 
 i18npool/source/indexentry/indexentrysupplier_common.cxx                |    2 
 i18npool/source/indexentry/indexentrysupplier_default.cxx               |    1 
 i18npool/source/indexentry/indexentrysupplier_ja_phonetic.cxx           |    1 
 i18npool/source/inputchecker/inputsequencechecker.cxx                   |    2 
 i18npool/source/localedata/LocaleNode.cxx                               |    3 
 i18npool/source/localedata/LocaleNode.hxx                               |   12 -
 i18npool/source/localedata/localedata.cxx                               |   10 -
 i18npool/source/localedata/saxparser.cxx                                |    5 
 i18npool/source/nativenumber/nativenumbersupplier.cxx                   |    2 
 i18npool/source/ordinalsuffix/ordinalsuffix.cxx                         |    4 
 i18npool/source/registerservices/registerservices.cxx                   |    3 
 i18npool/source/search/levdis.cxx                                       |    1 
 i18npool/source/search/levdis.hxx                                       |    2 
 i18npool/source/search/textsearch.cxx                                   |    6 
 i18npool/source/search/textsearch.hxx                                   |   15 +
 i18npool/source/textconversion/genconv_dict.cxx                         |    1 
 i18npool/source/textconversion/textconversion.cxx                       |    1 
 i18npool/source/textconversion/textconversionImpl.cxx                   |    2 
 i18npool/source/textconversion/textconversion_ko.cxx                    |    1 
 i18npool/source/textconversion/textconversion_zh.cxx                    |    1 
 i18npool/source/transliteration/chartonum.cxx                           |    2 
 i18npool/source/transliteration/ignoreDiacritics_CTL.cxx                |    1 
 i18npool/source/transliteration/ignoreKana.cxx                          |    3 
 i18npool/source/transliteration/ignoreSeparator_ja_JP.cxx               |    1 
 i18npool/source/transliteration/ignoreSpace_ja_JP.cxx                   |    1 
 i18npool/source/transliteration/ignoreTraditionalKanji_ja_JP.cxx        |    1 
 i18npool/source/transliteration/ignoreWidth.cxx                         |    3 
 i18npool/source/transliteration/textToPronounce_zh.cxx                  |    1 
 i18npool/source/transliteration/transliterationImpl.cxx                 |    3 
 i18npool/source/transliteration/transliteration_Ignore.cxx              |    3 
 i18npool/source/transliteration/transliteration_Numeric.cxx             |    3 
 i18npool/source/transliteration/transliteration_OneToOne.cxx            |    3 
 i18npool/source/transliteration/transliteration_body.cxx                |    5 
 i18npool/source/transliteration/transliteration_caseignore.cxx          |    5 
 i18npool/source/transliteration/transliteration_commonclass.cxx         |    1 
 82 files changed, 238 insertions(+), 174 deletions(-)

New commits:
commit c6b7f5555d5df13eae7aa72dbd3307ad8c9893dc
Author:     Gabor Kelemen <kelemen.gabor2 at nisz.hu>
AuthorDate: Sun May 26 13:36:37 2019 +0200
Commit:     Michael Stahl <Michael.Stahl at cib.de>
CommitDate: Tue May 28 12:07:25 2019 +0200

    tdf#42949 Fix IWYU warnings in i18npool/
    
    Found with bin/find-unneeded-includes
    Only removal proposals are dealt with here.
    
    Change-Id: Ic331c845f0a8f06c4a8f8f79b6f87e26ca7c3a7d
    Reviewed-on: https://gerrit.libreoffice.org/72972
    Tested-by: Jenkins
    Reviewed-by: Michael Stahl <Michael.Stahl at cib.de>

diff --git a/i18npool/IwyuFilter_i18npool.yaml b/i18npool/IwyuFilter_i18npool.yaml
new file mode 100644
index 000000000000..888e2d0a6ca4
--- /dev/null
+++ b/i18npool/IwyuFilter_i18npool.yaml
@@ -0,0 +1,94 @@
+---
+assumeFilename: i18npool/source/localedata/localedata.cxx
+blacklist:
+    i18npool/inc/breakiteratorImpl.hxx:
+    # Base class needs complete type
+    - com/sun/star/i18n/XBreakIterator.hpp
+    - com/sun/star/lang/XServiceInfo.hpp
+    i18npool/inc/calendar_gregorian.hxx:
+    # Needed for unique_ptr
+    - unicode/calendar.h
+    i18npool/inc/cclass_unicode.hxx:
+    # Base class needs complete type
+    - com/sun/star/i18n/XCharacterClassification.hpp
+    - com/sun/star/lang/XServiceInfo.hpp
+    i18npool/inc/characterclassificationImpl.hxx:
+    # Base class needs complete type
+    - com/sun/star/i18n/XCharacterClassification.hpp
+    - com/sun/star/lang/XServiceInfo.hpp
+    i18npool/inc/collatorImpl.hxx:
+    # Base class needs complete type
+    - com/sun/star/i18n/XCollator.hpp
+    - com/sun/star/lang/XServiceInfo.hpp
+    i18npool/inc/collator_unicode.hxx:
+    # Base class needs complete type
+    - com/sun/star/i18n/XCollator.hpp
+    - com/sun/star/lang/XServiceInfo.hpp
+    # Needed for unique_ptr
+    - unicode/tblcoll.h
+    i18npool/inc/defaultnumberingprovider.hxx:
+    # Base class needs complete type
+    - com/sun/star/text/XDefaultNumberingProvider.hpp
+    - com/sun/star/text/XNumberingFormatter.hpp
+    - com/sun/star/text/XNumberingTypeInfo.hpp
+    - com/sun/star/lang/XServiceInfo.hpp
+    i18npool/inc/indexentrysupplier.hxx:
+    # Base class needs complete type
+    - com/sun/star/i18n/XExtendedIndexEntrySupplier.hpp
+    - com/sun/star/lang/XServiceInfo.hpp
+    i18npool/inc/indexentrysupplier_common.hxx:
+    # Base class needs complete type
+    - com/sun/star/i18n/XExtendedIndexEntrySupplier.hpp
+    - com/sun/star/lang/XServiceInfo.hpp
+    i18npool/inc/inputsequencechecker.hxx:
+    # Base class needs complete type
+    - com/sun/star/i18n/XExtendedInputSequenceChecker.hpp
+    - com/sun/star/lang/XServiceInfo.hpp
+    i18npool/inc/localedata.hxx:
+    # Base class needs complete type
+    - com/sun/star/i18n/XLocaleData5.hpp
+    - com/sun/star/lang/XServiceInfo.hpp
+    # Don't propose hxx -> h change in URE libs
+    - osl/module.hxx
+    i18npool/inc/numberformatcode.hxx:
+    # Base class needs complete type
+    - com/sun/star/i18n/XNumberFormatCode.hpp
+    - com/sun/star/lang/XServiceInfo.hpp
+    i18npool/inc/ordinalsuffix.hxx:
+    # Base class needs complete type
+    - com/sun/star/i18n/XOrdinalSuffix.hpp
+    - com/sun/star/lang/XServiceInfo.hpp
+    i18npool/inc/textconversion.hxx:
+    # Base class needs complete type
+    - com/sun/star/i18n/XExtendedTextConversion.hpp
+    - com/sun/star/lang/XServiceInfo.hpp
+    i18npool/inc/textToPronounce_zh.hxx:
+    # Don't propose hxx -> h change in URE libs
+    - osl/module.hxx
+    i18npool/inc/transliterationImpl.hxx:
+    # Base class needs complete type
+    - com/sun/star/i18n/XExtendedTransliteration.hpp
+    - com/sun/star/lang/XServiceInfo.hpp
+    i18npool/inc/transliteration_Ignore.hxx:
+    # Needed for variable type
+    - unicode/translit.h
+    i18npool/inc/transliteration_commonclass.hxx:
+    # Base class needs complete type
+    - com/sun/star/i18n/XExtendedTransliteration.hpp
+    - com/sun/star/lang/XServiceInfo.hpp
+    i18npool/inc/unoscripttypedetector.hxx:
+    # Base class needs complete type
+    - com/sun/star/i18n/XScriptTypeDetector.hpp
+    - com/sun/star/lang/XServiceInfo.hpp
+    i18npool/source/search/textsearch.hxx:
+    # Base class needs complete type
+    - com/sun/star/util/XTextSearch2.hpp
+    - com/sun/star/lang/XServiceInfo.hpp
+    i18npool/source/breakiterator/xdictionary.cxx:
+    # Used after #ifdef DICT_JA_ZH_IN_DATAFILE
+    - config_folders.h
+    - osl/file.h
+    - rtl/bootstrap.hxx
+    i18npool/source/collator/collator_unicode.cxx:
+    # Config options are used in #ifdef
+    - config_locales.h
diff --git a/i18npool/inc/breakiteratorImpl.hxx b/i18npool/inc/breakiteratorImpl.hxx
index 909b6d138952..38fa40fe80b4 100644
--- a/i18npool/inc/breakiteratorImpl.hxx
+++ b/i18npool/inc/breakiteratorImpl.hxx
@@ -19,21 +19,14 @@
 #ifndef INCLUDED_I18NPOOL_INC_BREAKITERATORIMPL_HXX
 #define INCLUDED_I18NPOOL_INC_BREAKITERATORIMPL_HXX
 
-#include <com/sun/star/lang/XMultiServiceFactory.hpp>
 #include <com/sun/star/lang/XServiceInfo.hpp>
-#include <com/sun/star/beans/PropertyValues.hpp>
 #include <com/sun/star/i18n/XBreakIterator.hpp>
-#include <com/sun/star/i18n/WordType.hpp>
-#include <com/sun/star/i18n/BreakType.hpp>
-#include <com/sun/star/i18n/ScriptType.hpp>
-#include <com/sun/star/i18n/CharacterIteratorMode.hpp>
-#include <com/sun/star/i18n/CharType.hpp>
-#include <com/sun/star/i18n/XLocaleData.hpp>
-#include <com/sun/star/uno/XComponentContext.hpp>
 #include <cppuhelper/implbase.hxx>
 
 #include <vector>
 
+namespace com::sun::star::uno { class XComponentContext; }
+
 namespace i18npool {
 
 
diff --git a/i18npool/inc/breakiterator_th.hxx b/i18npool/inc/breakiterator_th.hxx
index c2f3629d1bc8..16d6cfd15e14 100644
--- a/i18npool/inc/breakiterator_th.hxx
+++ b/i18npool/inc/breakiterator_th.hxx
@@ -20,7 +20,6 @@
 #define INCLUDED_I18NPOOL_INC_BREAKITERATOR_TH_HXX
 
 #include "breakiterator_unicode.hxx"
-#include "xdictionary.hxx"
 
 namespace i18npool {
 
diff --git a/i18npool/inc/breakiterator_unicode.hxx b/i18npool/inc/breakiterator_unicode.hxx
index f34412d0eac4..251c4a982184 100644
--- a/i18npool/inc/breakiterator_unicode.hxx
+++ b/i18npool/inc/breakiterator_unicode.hxx
@@ -21,10 +21,12 @@
 
 #include "breakiteratorImpl.hxx"
 
-#include <unicode/brkiter.h>
+#include <unicode/utext.h>
 #include <memory>
 #include <unordered_map>
 
+namespace icu_63 { class BreakIterator; }
+
 namespace i18npool {
 
 #define LOAD_CHARACTER_BREAKITERATOR    0
diff --git a/i18npool/inc/calendarImpl.hxx b/i18npool/inc/calendarImpl.hxx
index 8d8f0d3afd23..b35decb0f750 100644
--- a/i18npool/inc/calendarImpl.hxx
+++ b/i18npool/inc/calendarImpl.hxx
@@ -20,14 +20,11 @@
 #define INCLUDED_I18NPOOL_INC_CALENDARIMPL_HXX
 
 #include <com/sun/star/i18n/XCalendar4.hpp>
-#include <com/sun/star/i18n/CalendarDisplayCode.hpp>
-#include <com/sun/star/i18n/CalendarFieldIndex.hpp>
-#include <com/sun/star/i18n/CalendarDisplayIndex.hpp>
 #include <cppuhelper/implbase.hxx>
 #include <com/sun/star/lang/XServiceInfo.hpp>
-#include <com/sun/star/uno/XComponentContext.hpp>
 #include <vector>
 
+namespace com::sun::star::uno { class XComponentContext; }
 
 //  class CalendarImpl
 
diff --git a/i18npool/inc/calendar_gregorian.hxx b/i18npool/inc/calendar_gregorian.hxx
index 34befe25e21e..6d343f33f28d 100644
--- a/i18npool/inc/calendar_gregorian.hxx
+++ b/i18npool/inc/calendar_gregorian.hxx
@@ -20,13 +20,15 @@
 #define INCLUDED_I18NPOOL_INC_CALENDAR_GREGORIAN_HXX
 
 #include "calendarImpl.hxx"
-#include "nativenumbersupplier.hxx"
+
+#include <com/sun/star/i18n/CalendarFieldIndex.hpp>
 
 #include <unicode/calendar.h>
 #include <rtl/ref.hxx>
 
 #include <memory>
 
+namespace i18npool { class NativeNumberSupplierService; }
 
 //  class Calendar_gregorian
 
diff --git a/i18npool/inc/cclass_unicode.hxx b/i18npool/inc/cclass_unicode.hxx
index cd77cbea275a..3a702ca9d909 100644
--- a/i18npool/inc/cclass_unicode.hxx
+++ b/i18npool/inc/cclass_unicode.hxx
@@ -19,19 +19,19 @@
 #ifndef INCLUDED_I18NPOOL_INC_CCLASS_UNICODE_HXX
 #define INCLUDED_I18NPOOL_INC_CCLASS_UNICODE_HXX
 
-#include <com/sun/star/i18n/XNativeNumberSupplier.hpp>
 #include <com/sun/star/i18n/XCharacterClassification.hpp>
-#include <com/sun/star/i18n/XLocaleData5.hpp>
 #include <cppuhelper/implbase.hxx>
 #include <com/sun/star/lang/XServiceInfo.hpp>
 
-#include "transliteration_body.hxx"
 #include <o3tl/typed_flags_set.hxx>
 #include <memory>
 
 namespace com { namespace sun { namespace star { namespace uno {
     class XComponentContext;
 } } } }
+namespace com::sun::star::i18n { class XNativeNumberSupplier; }
+namespace com::sun::star::i18n { class XLocaleData5; }
+namespace i18npool { class Transliteration_casemapping; }
 
 
 /// Flag values of table.
diff --git a/i18npool/inc/chaptercollator.hxx b/i18npool/inc/chaptercollator.hxx
index cfc9a9a6cbea..9197c82df8f5 100644
--- a/i18npool/inc/chaptercollator.hxx
+++ b/i18npool/inc/chaptercollator.hxx
@@ -20,7 +20,8 @@
 #define INCLUDED_I18NPOOL_INC_CHAPTERCOLLATOR_HXX
 
 #include "collatorImpl.hxx"
-#include <com/sun/star/i18n/XCharacterClassification.hpp>
+
+namespace com::sun::star::i18n { class XCharacterClassification; }
 
 namespace i18npool {
 
diff --git a/i18npool/inc/characterclassificationImpl.hxx b/i18npool/inc/characterclassificationImpl.hxx
index 078a31b116ba..ec71ad75c7ca 100644
--- a/i18npool/inc/characterclassificationImpl.hxx
+++ b/i18npool/inc/characterclassificationImpl.hxx
@@ -23,9 +23,9 @@
 #include <cppuhelper/implbase.hxx>
 #include <vector>
 #include <memory>
-#include <com/sun/star/i18n/KCharacterType.hpp>
 #include <com/sun/star/lang/XServiceInfo.hpp>
-#include <com/sun/star/uno/XComponentContext.hpp>
+
+namespace com::sun::star::uno { class XComponentContext; }
 
 namespace i18npool {
 
diff --git a/i18npool/inc/collatorImpl.hxx b/i18npool/inc/collatorImpl.hxx
index 0370c6a47124..d56554264ddb 100644
--- a/i18npool/inc/collatorImpl.hxx
+++ b/i18npool/inc/collatorImpl.hxx
@@ -20,17 +20,17 @@
 #define INCLUDED_I18NPOOL_INC_COLLATORIMPL_HXX
 
 #include <com/sun/star/uno/Reference.h>
-#include <com/sun/star/i18n/XLocaleData5.hpp>
 #include <com/sun/star/i18n/XCollator.hpp>
 #include <com/sun/star/lang/Locale.hpp>
-#include <cppuhelper/weak.hxx>
 #include <cppuhelper/implbase.hxx>
 #include <com/sun/star/lang/XServiceInfo.hpp>
-#include <com/sun/star/uno/XComponentContext.hpp>
 
 #include <vector>
 #include <memory>
 
+namespace com::sun::star::i18n { class XLocaleData5; }
+namespace com::sun::star::uno { class XComponentContext; }
+
 namespace i18npool {
 
 //      ----------------------------------------------------
diff --git a/i18npool/inc/defaultnumberingprovider.hxx b/i18npool/inc/defaultnumberingprovider.hxx
index 1320b7e41a73..eb9446c7098b 100644
--- a/i18npool/inc/defaultnumberingprovider.hxx
+++ b/i18npool/inc/defaultnumberingprovider.hxx
@@ -23,14 +23,12 @@
 #include <com/sun/star/text/XNumberingFormatter.hpp>
 #include <com/sun/star/text/XNumberingTypeInfo.hpp>
 #include <com/sun/star/lang/XServiceInfo.hpp>
-#include <com/sun/star/i18n/XTransliteration.hpp>
-#include <com/sun/star/container/XHierarchicalNameAccess.hpp>
 #include <cppuhelper/implbase.hxx>
 #include <rtl/ref.hxx>
 
-#include "transliterationImpl.hxx"
-
-#include <memory>
+namespace com::sun::star::container { class XHierarchicalNameAccess; }
+namespace com::sun::star::uno { class XComponentContext; }
+namespace i18npool { class TransliterationImpl; }
 
 namespace i18npool {
 
diff --git a/i18npool/inc/indexentrysupplier.hxx b/i18npool/inc/indexentrysupplier.hxx
index 088ca721630c..5b711ea7684d 100644
--- a/i18npool/inc/indexentrysupplier.hxx
+++ b/i18npool/inc/indexentrysupplier.hxx
@@ -22,7 +22,8 @@
 #include <com/sun/star/i18n/XExtendedIndexEntrySupplier.hpp>
 #include <cppuhelper/implbase.hxx>
 #include <com/sun/star/lang/XServiceInfo.hpp>
-#include <com/sun/star/uno/XComponentContext.hpp>
+
+namespace com::sun::star::uno { class XComponentContext; }
 
 namespace i18npool {
 
diff --git a/i18npool/inc/indexentrysupplier_common.hxx b/i18npool/inc/indexentrysupplier_common.hxx
index 9eb2044506c4..6870856741a9 100644
--- a/i18npool/inc/indexentrysupplier_common.hxx
+++ b/i18npool/inc/indexentrysupplier_common.hxx
@@ -24,9 +24,9 @@
 #include <cppuhelper/implbase.hxx>
 #include <com/sun/star/lang/XServiceInfo.hpp>
 #include <rtl/ref.hxx>
-#include "collatorImpl.hxx"
 
-#include <memory>
+namespace com::sun::star::uno { class XComponentContext; }
+namespace i18npool { class CollatorImpl; }
 
 namespace i18npool {
 
diff --git a/i18npool/inc/inputsequencechecker.hxx b/i18npool/inc/inputsequencechecker.hxx
index ff7af4d49e3d..1c5f2fbf2c94 100644
--- a/i18npool/inc/inputsequencechecker.hxx
+++ b/i18npool/inc/inputsequencechecker.hxx
@@ -20,14 +20,14 @@
 #define INCLUDED_I18NPOOL_INC_INPUTSEQUENCECHECKER_HXX
 
 #include <cppuhelper/implbase.hxx>
-#include <com/sun/star/lang/XMultiServiceFactory.hpp>
 #include <com/sun/star/lang/XServiceInfo.hpp>
 #include <com/sun/star/i18n/XExtendedInputSequenceChecker.hpp>
-#include <com/sun/star/uno/XComponentContext.hpp>
 
 #include <vector>
 #include <memory>
 
+namespace com::sun::star::uno { class XComponentContext; }
+
 namespace i18npool {
 
 
diff --git a/i18npool/inc/localedata.hxx b/i18npool/inc/localedata.hxx
index 07e6e50ab974..b707ed3596b1 100644
--- a/i18npool/inc/localedata.hxx
+++ b/i18npool/inc/localedata.hxx
@@ -19,24 +19,15 @@
 #ifndef INCLUDED_I18NPOOL_INC_LOCALEDATA_HXX
 #define INCLUDED_I18NPOOL_INC_LOCALEDATA_HXX
 
-#include <com/sun/star/lang/XMultiServiceFactory.hpp>
-
 #include <com/sun/star/i18n/XLocaleData5.hpp>
 
 
 #include <cppuhelper/implbase.hxx>
-#include <cppu/macros.hxx>
-#include <com/sun/star/uno/Reference.h>
 
 #include <com/sun/star/uno/Sequence.h>
 #include <com/sun/star/i18n/Calendar.hpp>
-#include <com/sun/star/i18n/FormatElement.hpp>
-#include <com/sun/star/i18n/Currency.hpp>
-#include <com/sun/star/lang/Locale.hpp>
 #include <com/sun/star/i18n/LocaleDataItem2.hpp>
 #include <com/sun/star/i18n/UnicodeScript.hpp>
-#include <com/sun/star/uno/RuntimeException.hpp>
-#include <com/sun/star/uno/XInterface.hpp>
 #include <rtl/ref.hxx>
 #include <rtl/ustring.hxx>
 #include <vector>
@@ -44,15 +35,15 @@
 #include <osl/module.hxx>
 
 
-#include "defaultnumberingprovider.hxx"
-#include <com/sun/star/style/NumberingType.hpp>
-#include <com/sun/star/beans/PropertyValue.hpp>
-#include <com/sun/star/text/HoriOrientation.hpp>
-
-#include <com/sun/star/uno/Reference.hxx>
-#include <com/sun/star/container/XIndexAccess.hpp>
 #include <com/sun/star/lang/XServiceInfo.hpp>
 
+namespace com::sun::star::beans { struct PropertyValue; }
+namespace com::sun::star::container { class XIndexAccess; }
+namespace com::sun::star::i18n { struct Currency; }
+namespace com::sun::star::i18n { struct Currency2; }
+namespace com::sun::star::i18n { struct FormatElement; }
+namespace com::sun::star::lang { struct Locale; }
+
 struct LocaleDataLookupTableItem;
 
 namespace i18npool {
diff --git a/i18npool/inc/nativenumbersupplier.hxx b/i18npool/inc/nativenumbersupplier.hxx
index 067a590b441a..9bd37854bd70 100644
--- a/i18npool/inc/nativenumbersupplier.hxx
+++ b/i18npool/inc/nativenumbersupplier.hxx
@@ -20,11 +20,11 @@
 #define INCLUDED_I18NPOOL_INC_NATIVENUMBERSUPPLIER_HXX
 
 #include <com/sun/star/i18n/XNativeNumberSupplier2.hpp>
-#include <com/sun/star/i18n/NativeNumberMode.hpp>
 #include <com/sun/star/i18n/NativeNumberXmlAttributes.hpp>
 #include <cppuhelper/implbase.hxx>
 #include <com/sun/star/lang/XServiceInfo.hpp>
-#include <com/sun/star/i18n/CharacterClassification.hpp>
+
+namespace com::sun::star::i18n { class XCharacterClassification; }
 
 namespace i18npool {
 
diff --git a/i18npool/inc/numberformatcode.hxx b/i18npool/inc/numberformatcode.hxx
index 35951c0c3783..8a0c306d5529 100644
--- a/i18npool/inc/numberformatcode.hxx
+++ b/i18npool/inc/numberformatcode.hxx
@@ -20,18 +20,19 @@
 #ifndef INCLUDED_I18NPOOL_INC_NUMBERFORMATCODE_HXX
 #define INCLUDED_I18NPOOL_INC_NUMBERFORMATCODE_HXX
 
-#include <com/sun/star/lang/XMultiServiceFactory.hpp>
 #include <cppuhelper/implbase.hxx>
 
 #include <com/sun/star/i18n/XNumberFormatCode.hpp>
-#include <com/sun/star/i18n/XLocaleData5.hpp>
 #include <com/sun/star/uno/Sequence.hxx>
-#include <com/sun/star/uno/XComponentContext.hpp>
 #include <com/sun/star/lang/XServiceInfo.hpp>
 
 #include <deque>
 #include <utility>
 
+namespace com::sun::star::i18n { class XLocaleData5; }
+namespace com::sun::star::i18n { struct FormatElement; }
+namespace com::sun::star::uno { class XComponentContext; }
+
 class NumberFormatCodeMapper : public cppu::WeakImplHelper
 <
     css::i18n::XNumberFormatCode,
diff --git a/i18npool/inc/ordinalsuffix.hxx b/i18npool/inc/ordinalsuffix.hxx
index 61dd4128a59f..ef7e4a49f932 100644
--- a/i18npool/inc/ordinalsuffix.hxx
+++ b/i18npool/inc/ordinalsuffix.hxx
@@ -23,7 +23,8 @@
 #include <com/sun/star/i18n/XOrdinalSuffix.hpp>
 #include <cppuhelper/implbase.hxx>
 #include <com/sun/star/lang/XServiceInfo.hpp>
-#include <com/sun/star/lang/Locale.hpp>
+
+namespace com::sun::star::lang { struct Locale; }
 
 namespace i18npool {
 
diff --git a/i18npool/inc/textToPronounce_zh.hxx b/i18npool/inc/textToPronounce_zh.hxx
index c311b8955875..931817b9075a 100644
--- a/i18npool/inc/textToPronounce_zh.hxx
+++ b/i18npool/inc/textToPronounce_zh.hxx
@@ -20,7 +20,7 @@
 #define INCLUDED_I18NPOOL_INC_TEXTTOPRONOUNCE_ZH_HXX
 
 #include "transliteration_Ignore.hxx"
-#include "indexentrysupplier_asian.hxx"
+#include <osl/module.hxx>
 
 namespace i18npool {
 
diff --git a/i18npool/inc/textconversion.hxx b/i18npool/inc/textconversion.hxx
index 98e16ca623f2..cff2723615ba 100644
--- a/i18npool/inc/textconversion.hxx
+++ b/i18npool/inc/textconversion.hxx
@@ -19,15 +19,15 @@
 #ifndef INCLUDED_I18NPOOL_INC_TEXTCONVERSION_HXX
 #define INCLUDED_I18NPOOL_INC_TEXTCONVERSION_HXX
 
-#include <com/sun/star/lang/XMultiServiceFactory.hpp>
 #include <com/sun/star/lang/XServiceInfo.hpp>
 #include <com/sun/star/i18n/XExtendedTextConversion.hpp>
-#include <com/sun/star/linguistic2/XConversionDictionary.hpp>
-#include <com/sun/star/linguistic2/XConversionDictionaryList.hpp>
-#include <com/sun/star/uno/XComponentContext.hpp>
 #include <cppuhelper/implbase.hxx>
 #include <osl/module.h>
 
+namespace com::sun::star::linguistic2 { class XConversionDictionary; }
+namespace com::sun::star::linguistic2 { class XConversionDictionaryList; }
+namespace com::sun::star::uno { class XComponentContext; }
+
 namespace i18npool {
 
 
diff --git a/i18npool/inc/textconversionImpl.hxx b/i18npool/inc/textconversionImpl.hxx
index 222e5911dce2..9cd87e8d611c 100644
--- a/i18npool/inc/textconversionImpl.hxx
+++ b/i18npool/inc/textconversionImpl.hxx
@@ -19,12 +19,12 @@
 #ifndef INCLUDED_I18NPOOL_INC_TEXTCONVERSIONIMPL_HXX
 #define INCLUDED_I18NPOOL_INC_TEXTCONVERSIONIMPL_HXX
 
-#include <com/sun/star/lang/XMultiServiceFactory.hpp>
 #include <com/sun/star/lang/XServiceInfo.hpp>
 #include <com/sun/star/i18n/XExtendedTextConversion.hpp>
-#include <com/sun/star/uno/XComponentContext.hpp>
 #include <cppuhelper/implbase.hxx>
 
+namespace com::sun::star::uno { class XComponentContext; }
+
 namespace i18npool {
 
 
diff --git a/i18npool/inc/transliterationImpl.hxx b/i18npool/inc/transliterationImpl.hxx
index 6012d41490d8..21ca033ab4b5 100644
--- a/i18npool/inc/transliterationImpl.hxx
+++ b/i18npool/inc/transliterationImpl.hxx
@@ -19,13 +19,14 @@
 #ifndef INCLUDED_I18NPOOL_INC_TRANSLITERATIONIMPL_HXX
 #define INCLUDED_I18NPOOL_INC_TRANSLITERATIONIMPL_HXX
 
-#include <com/sun/star/i18n/XLocaleData5.hpp>
 #include <com/sun/star/i18n/XExtendedTransliteration.hpp>
 #include <cppuhelper/implbase.hxx>
-#include <com/sun/star/uno/XComponentContext.hpp>
 #include <com/sun/star/lang/XServiceInfo.hpp>
 #include <sal/types.h>
 
+namespace com::sun::star::i18n { class XLocaleData5; }
+namespace com::sun::star::uno { class XComponentContext; }
+
 namespace i18npool {
 
 class TransliterationImpl : public cppu::WeakImplHelper
diff --git a/i18npool/inc/transliteration_Ignore.hxx b/i18npool/inc/transliteration_Ignore.hxx
index 4f46d10131c9..f8b9a554f4b2 100644
--- a/i18npool/inc/transliteration_Ignore.hxx
+++ b/i18npool/inc/transliteration_Ignore.hxx
@@ -20,9 +20,10 @@
 #define INCLUDED_I18NPOOL_INC_TRANSLITERATION_IGNORE_HXX
 
 #include "transliteration_commonclass.hxx"
-#include <i18nutil/oneToOneMapping.hxx>
 #include <unicode/translit.h>
 
+namespace i18nutil { class oneToOneMapping; }
+
 typedef sal_Unicode (*TransFunc)(const sal_Unicode);
 
 namespace i18npool {
diff --git a/i18npool/inc/transliteration_OneToOne.hxx b/i18npool/inc/transliteration_OneToOne.hxx
index ae594e754377..fc45755c9f13 100644
--- a/i18npool/inc/transliteration_OneToOne.hxx
+++ b/i18npool/inc/transliteration_OneToOne.hxx
@@ -20,7 +20,8 @@
 #define INCLUDED_I18NPOOL_INC_TRANSLITERATION_ONETOONE_HXX
 
 #include "transliteration_commonclass.hxx"
-#include <i18nutil/oneToOneMapping.hxx>
+
+namespace i18nutil { class oneToOneMapping; }
 
 namespace i18npool {
 
diff --git a/i18npool/inc/transliteration_commonclass.hxx b/i18npool/inc/transliteration_commonclass.hxx
index 48d6688df36f..5cb7dd24b91e 100644
--- a/i18npool/inc/transliteration_commonclass.hxx
+++ b/i18npool/inc/transliteration_commonclass.hxx
@@ -20,10 +20,8 @@
 #define INCLUDED_I18NPOOL_INC_TRANSLITERATION_COMMONCLASS_HXX
 
 #include <com/sun/star/i18n/XExtendedTransliteration.hpp>
-#include <com/sun/star/i18n/TransliterationType.hpp>
 #include <com/sun/star/lang/XServiceInfo.hpp>
 #include <cppuhelper/implbase.hxx>
-#include <rtl/ustrbuf.h>
 #include <rtl/ustring.hxx>
 
 namespace i18npool {
diff --git a/i18npool/inc/xdictionary.hxx b/i18npool/inc/xdictionary.hxx
index ef279ae051b5..38d5ac72e195 100644
--- a/i18npool/inc/xdictionary.hxx
+++ b/i18npool/inc/xdictionary.hxx
@@ -20,7 +20,6 @@
 #define INCLUDED_I18NPOOL_INC_XDICTIONARY_HXX
 
 #include <sal/types.h>
-#include <osl/module.h>
 
 #include <com/sun/star/i18n/Boundary.hpp>
 
diff --git a/i18npool/qa/cppunit/test_breakiterator.cxx b/i18npool/qa/cppunit/test_breakiterator.cxx
index 0c132acf3a43..df51c575d06d 100644
--- a/i18npool/qa/cppunit/test_breakiterator.cxx
+++ b/i18npool/qa/cppunit/test_breakiterator.cxx
@@ -7,18 +7,15 @@
  * file, You can obtain one at http://mozilla.org/MPL/2.0/.
  */
 
-#include <cppuhelper/bootstrap.hxx>
-#include <cppuhelper/basemutex.hxx>
 #include <com/sun/star/i18n/XBreakIterator.hpp>
 #include <com/sun/star/i18n/CharacterIteratorMode.hpp>
 #include <com/sun/star/i18n/ScriptType.hpp>
 #include <com/sun/star/i18n/WordType.hpp>
 #include <unotest/bootstrapfixturebase.hxx>
 
-#include <unicode/uversion.h>
+#include <unicode/uvernum.h>
 
 #include <rtl/strbuf.hxx>
-#include <rtl/ustrbuf.hxx>
 
 #include <string.h>
 
diff --git a/i18npool/qa/cppunit/test_characterclassification.cxx b/i18npool/qa/cppunit/test_characterclassification.cxx
index 1fa1f3971ab4..4af3984409a7 100644
--- a/i18npool/qa/cppunit/test_characterclassification.cxx
+++ b/i18npool/qa/cppunit/test_characterclassification.cxx
@@ -7,16 +7,9 @@
  * file, You can obtain one at http://mozilla.org/MPL/2.0/.
  */
 
-#include <cppuhelper/bootstrap.hxx>
-#include <cppuhelper/basemutex.hxx>
 #include <com/sun/star/i18n/XCharacterClassification.hpp>
 #include <unotest/bootstrapfixturebase.hxx>
 
-#include <rtl/strbuf.hxx>
-#include <rtl/ustrbuf.hxx>
-
-#include <string.h>
-
 using namespace ::com::sun::star;
 
 class TestCharacterClassification : public test::BootstrapFixtureBase
diff --git a/i18npool/qa/cppunit/test_textsearch.cxx b/i18npool/qa/cppunit/test_textsearch.cxx
index 012bbeb3eddd..6d08e662ae31 100644
--- a/i18npool/qa/cppunit/test_textsearch.cxx
+++ b/i18npool/qa/cppunit/test_textsearch.cxx
@@ -17,21 +17,15 @@
  *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
  */
 
-#include <cppuhelper/bootstrap.hxx>
-#include <cppuhelper/basemutex.hxx>
 #include <com/sun/star/util/SearchFlags.hpp>
 #include <com/sun/star/util/SearchOptions.hpp>
 #include <com/sun/star/util/SearchAlgorithms2.hpp>
 #include <com/sun/star/util/XTextSearch2.hpp>
-#include <com/sun/star/i18n/Transliteration.hpp>
 #include <unotest/bootstrapfixturebase.hxx>
 #include <i18nutil/transliteration.hxx>
 
 #include <unicode/regex.h>
 
-#include <rtl/strbuf.hxx>
-#include <rtl/ustrbuf.hxx>
-
 using namespace ::com::sun::star;
 using namespace U_ICU_NAMESPACE;
 typedef U_ICU_NAMESPACE::UnicodeString IcuUniString;
diff --git a/i18npool/source/breakiterator/breakiteratorImpl.cxx b/i18npool/source/breakiterator/breakiteratorImpl.cxx
index 531fc8e6ccab..857aa21ee449 100644
--- a/i18npool/source/breakiterator/breakiteratorImpl.cxx
+++ b/i18npool/source/breakiterator/breakiteratorImpl.cxx
@@ -24,6 +24,11 @@
 #include <i18nutil/unicode.hxx>
 #include <rtl/ustrbuf.hxx>
 
+#include <com/sun/star/i18n/CharType.hpp>
+#include <com/sun/star/i18n/ScriptType.hpp>
+#include <com/sun/star/i18n/WordType.hpp>
+#include <com/sun/star/uno/XComponentContext.hpp>
+
 using namespace ::com::sun::star;
 using namespace ::com::sun::star::uno;
 using namespace ::com::sun::star::i18n;
diff --git a/i18npool/source/breakiterator/breakiterator_cjk.cxx b/i18npool/source/breakiterator/breakiterator_cjk.cxx
index 921ab47c220e..42a7ac6392c5 100644
--- a/i18npool/source/breakiterator/breakiterator_cjk.cxx
+++ b/i18npool/source/breakiterator/breakiterator_cjk.cxx
@@ -19,7 +19,9 @@
 
 #include <breakiterator_cjk.hxx>
 #include <localedata.hxx>
-#include <i18nutil/unicode.hxx>
+
+#include <com/sun/star/i18n/BreakType.hpp>
+#include <com/sun/star/i18n/ScriptType.hpp>
 
 using namespace ::com::sun::star::uno;
 using namespace ::com::sun::star::i18n;
diff --git a/i18npool/source/breakiterator/breakiterator_th.cxx b/i18npool/source/breakiterator/breakiterator_th.cxx
index a5ab63e9a63f..37948d5904b0 100644
--- a/i18npool/source/breakiterator/breakiterator_th.cxx
+++ b/i18npool/source/breakiterator/breakiterator_th.cxx
@@ -23,7 +23,6 @@
 #include <wtt.h>
 
 #include <string.h>
-#include <algorithm>
 
 using namespace ::com::sun::star;
 using namespace ::com::sun::star::uno;
diff --git a/i18npool/source/breakiterator/breakiterator_unicode.cxx b/i18npool/source/breakiterator/breakiterator_unicode.cxx
index 25b6c2e8b450..398bdd7326c0 100644
--- a/i18npool/source/breakiterator/breakiterator_unicode.cxx
+++ b/i18npool/source/breakiterator/breakiterator_unicode.cxx
@@ -28,7 +28,10 @@
 #include <unicode/udata.h>
 #include <rtl/strbuf.hxx>
 #include <rtl/ustring.hxx>
-#include <string.h>
+
+#include <com/sun/star/i18n/BreakType.hpp>
+#include <com/sun/star/i18n/CharacterIteratorMode.hpp>
+#include <com/sun/star/i18n/WordType.hpp>
 
 U_CDECL_BEGIN
 extern const char OpenOffice_dat[];
diff --git a/i18npool/source/breakiterator/gendict.cxx b/i18npool/source/breakiterator/gendict.cxx
index f36262a34cfe..082ad2416bad 100644
--- a/i18npool/source/breakiterator/gendict.cxx
+++ b/i18npool/source/breakiterator/gendict.cxx
@@ -23,7 +23,6 @@
 #include <errno.h>
 #include <sal/main.h>
 #include <sal/types.h>
-#include <rtl/strbuf.hxx>
 #include <rtl/ustring.hxx>
 #include <osl/diagnose.h>
 #include <vector>
diff --git a/i18npool/source/breakiterator/xdictionary.cxx b/i18npool/source/breakiterator/xdictionary.cxx
index b177b07973a4..c905f67d4685 100644
--- a/i18npool/source/breakiterator/xdictionary.cxx
+++ b/i18npool/source/breakiterator/xdictionary.cxx
@@ -20,9 +20,11 @@
 #include <config_folders.h>
 
 #include <osl/file.h>
+#include <osl/module.h>
 #include <osl/mutex.hxx>
 #include <rtl/ustrbuf.hxx>
 #include <rtl/bootstrap.hxx>
+#include <com/sun/star/i18n/ScriptType.hpp>
 #include <com/sun/star/i18n/WordType.hpp>
 #include <xdictionary.hxx>
 #include <unicode/uchar.h>
diff --git a/i18npool/source/calendar/calendarImpl.cxx b/i18npool/source/calendar/calendarImpl.cxx
index 27b5d7f0e407..93ff9b16fa0b 100644
--- a/i18npool/source/calendar/calendarImpl.cxx
+++ b/i18npool/source/calendar/calendarImpl.cxx
@@ -21,6 +21,8 @@
 #include <localedata.hxx>
 #include <cppuhelper/supportsservice.hxx>
 
+#include <com/sun/star/uno/XComponentContext.hpp>
+
 using namespace ::com::sun::star::uno;
 using namespace ::com::sun::star::i18n;
 using namespace ::com::sun::star::lang;
diff --git a/i18npool/source/calendar/calendar_gregorian.cxx b/i18npool/source/calendar/calendar_gregorian.cxx
index 662c84b897c9..45a9de3bf3ef 100644
--- a/i18npool/source/calendar/calendar_gregorian.cxx
+++ b/i18npool/source/calendar/calendar_gregorian.cxx
@@ -21,11 +21,11 @@
 
 #include <calendar_gregorian.hxx>
 #include <localedata.hxx>
-#include <com/sun/star/i18n/AmPmValue.hpp>
-#include <com/sun/star/i18n/Months.hpp>
-#include <com/sun/star/i18n/Weekdays.hpp>
+#include <nativenumbersupplier.hxx>
+#include <com/sun/star/i18n/CalendarDisplayCode.hpp>
+#include <com/sun/star/i18n/CalendarDisplayIndex.hpp>
+#include <com/sun/star/i18n/NativeNumberMode.hpp>
 #include <com/sun/star/i18n/reservedWords.hpp>
-#include <com/sun/star/lang/XMultiServiceFactory.hpp>
 #include <cppuhelper/supportsservice.hxx>
 #include <rtl/math.hxx>
 #include <sal/log.hxx>
diff --git a/i18npool/source/calendar/calendar_hijri.cxx b/i18npool/source/calendar/calendar_hijri.cxx
index bee72af7e7e3..ce48dac0f127 100644
--- a/i18npool/source/calendar/calendar_hijri.cxx
+++ b/i18npool/source/calendar/calendar_hijri.cxx
@@ -21,7 +21,6 @@
 
 #include <cmath>
 #include <stdlib.h>
-#include <math.h>
 
 #include <calendar_hijri.hxx>
 
diff --git a/i18npool/source/calendar/calendar_jewish.cxx b/i18npool/source/calendar/calendar_jewish.cxx
index 9ac585447265..996d01d73f49 100644
--- a/i18npool/source/calendar/calendar_jewish.cxx
+++ b/i18npool/source/calendar/calendar_jewish.cxx
@@ -18,10 +18,11 @@
  */
 
 
-#include <math.h>
-#include <stdio.h>
-
 #include <calendar_jewish.hxx>
+#include <nativenumbersupplier.hxx>
+
+#include <com/sun/star/i18n/CalendarDisplayCode.hpp>
+#include <com/sun/star/i18n/NativeNumberMode.hpp>
 
 using namespace ::com::sun::star::uno;
 using namespace ::com::sun::star::i18n;
diff --git a/i18npool/source/characterclassification/cclass_unicode.cxx b/i18npool/source/characterclassification/cclass_unicode.cxx
index 6c7ff94d2811..9656f1281abc 100644
--- a/i18npool/source/characterclassification/cclass_unicode.cxx
+++ b/i18npool/source/characterclassification/cclass_unicode.cxx
@@ -18,14 +18,14 @@
  */
 
 #include <cclass_unicode.hxx>
-#include <com/sun/star/i18n/UnicodeScript.hpp>
-#include <com/sun/star/i18n/UnicodeType.hpp>
 #include <com/sun/star/i18n/KCharacterType.hpp>
+#include <com/sun/star/i18n/WordType.hpp>
 #include <com/sun/star/lang/WrappedTargetRuntimeException.hpp>
 #include <unicode/uchar.h>
 #include <cppuhelper/exc_hlp.hxx>
 #include <cppuhelper/supportsservice.hxx>
 #include <breakiteratorImpl.hxx>
+#include <transliteration_body.hxx>
 #include <rtl/ref.hxx>
 
 using namespace ::com::sun::star;
diff --git a/i18npool/source/characterclassification/cclass_unicode_parser.cxx b/i18npool/source/characterclassification/cclass_unicode_parser.cxx
index d3f18e7bbe27..bb8387836ae8 100644
--- a/i18npool/source/characterclassification/cclass_unicode_parser.cxx
+++ b/i18npool/source/characterclassification/cclass_unicode_parser.cxx
@@ -25,7 +25,6 @@
 #include <rtl/ustring.hxx>
 #include <com/sun/star/i18n/KParseTokens.hpp>
 #include <com/sun/star/i18n/KParseType.hpp>
-#include <com/sun/star/i18n/UnicodeType.hpp>
 #include <com/sun/star/i18n/LocaleData2.hpp>
 #include <com/sun/star/i18n/NativeNumberMode.hpp>
 #include <com/sun/star/i18n/NativeNumberSupplier.hpp>
diff --git a/i18npool/source/characterclassification/characterclassificationImpl.cxx b/i18npool/source/characterclassification/characterclassificationImpl.cxx
index fda7c6e0cf6d..751e9d12b7e4 100644
--- a/i18npool/source/characterclassification/characterclassificationImpl.cxx
+++ b/i18npool/source/characterclassification/characterclassificationImpl.cxx
@@ -20,7 +20,8 @@
 #include <cppuhelper/supportsservice.hxx>
 #include <characterclassificationImpl.hxx>
 #include <localedata.hxx>
-#include <rtl/ustrbuf.hxx>
+
+#include <com/sun/star/uno/XComponentContext.hpp>
 
 using namespace com::sun::star::uno;
 using namespace ::com::sun::star::i18n;
diff --git a/i18npool/source/characterclassification/unoscripttypedetector.cxx b/i18npool/source/characterclassification/unoscripttypedetector.cxx
index aab05b8c2c93..947d79bff0d6 100644
--- a/i18npool/source/characterclassification/unoscripttypedetector.cxx
+++ b/i18npool/source/characterclassification/unoscripttypedetector.cxx
@@ -17,11 +17,12 @@
  *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
  */
 
-#include <com/sun/star/uno/XComponentContext.hpp>
 #include <unoscripttypedetector.hxx>
 #include <cppuhelper/supportsservice.hxx>
 #include <i18nutil/scripttypedetector.hxx>
 
+namespace com::sun::star::uno { class XComponentContext; }
+
 //      class UnoScriptTypeDetector
 sal_Int16 SAL_CALL
 UnoScriptTypeDetector::getScriptDirection( const OUString& Text, sal_Int32 nPos, sal_Int16 defaultScriptDirection )
diff --git a/i18npool/source/collator/collatorImpl.cxx b/i18npool/source/collator/collatorImpl.cxx
index fb15a7b93c2b..c298a34910a9 100644
--- a/i18npool/source/collator/collatorImpl.cxx
+++ b/i18npool/source/collator/collatorImpl.cxx
@@ -21,7 +21,6 @@
 #include <localedata.hxx>
 #include <com/sun/star/i18n/CollatorOptions.hpp>
 #include <com/sun/star/i18n/LocaleData2.hpp>
-#include <rtl/ustrbuf.hxx>
 #include <cppuhelper/supportsservice.hxx>
 
 using namespace com::sun::star;
diff --git a/i18npool/source/defaultnumberingprovider/defaultnumberingprovider.cxx b/i18npool/source/defaultnumberingprovider/defaultnumberingprovider.cxx
index eb75e9fc3317..ce6eb1dde781 100644
--- a/i18npool/source/defaultnumberingprovider/defaultnumberingprovider.cxx
+++ b/i18npool/source/defaultnumberingprovider/defaultnumberingprovider.cxx
@@ -18,16 +18,17 @@
  */
 
 #include <defaultnumberingprovider.hxx>
+#include <transliterationImpl.hxx>
+#include <com/sun/star/i18n/NativeNumberMode.hpp>
 #include <com/sun/star/lang/IllegalArgumentException.hpp>
 #include <com/sun/star/style/NumberingType.hpp>
 #include <com/sun/star/beans/PropertyValue.hpp>
 #include <com/sun/star/configuration/theDefaultProvider.hpp>
-#include <com/sun/star/text/HoriOrientation.hpp>
+#include <com/sun/star/container/XHierarchicalNameAccess.hpp>
 #include <osl/diagnose.h>
 #include <rtl/ref.hxx>
 #include <localedata.hxx>
 #include <nativenumbersupplier.hxx>
-#include <stdio.h>
 #include <string.h>
 #include <comphelper/propertysequence.hxx>
 #include <cppuhelper/supportsservice.hxx>
@@ -66,13 +67,9 @@
 #define S_HI_TWO "\xDB\xB2"
 #define S_HI_THREE "\xDB\xB3"
 
-#include <math.h>
 #include <sal/macros.h>
 #include <rtl/ustring.hxx>
 #include <rtl/ustrbuf.hxx>
-#include <com/sun/star/i18n/XTransliteration.hpp>
-#include <com/sun/star/i18n/TransliterationType.hpp>
-#include <com/sun/star/i18n/XLocaleData.hpp>
 
 #include <bullet.h>
 
diff --git a/i18npool/source/indexentry/indexentrysupplier.cxx b/i18npool/source/indexentry/indexentrysupplier.cxx
index 368fcba116c4..5bf55607ab5d 100644
--- a/i18npool/source/indexentry/indexentrysupplier.cxx
+++ b/i18npool/source/indexentry/indexentrysupplier.cxx
@@ -17,12 +17,13 @@
  *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
  */
 
-#include <rtl/ustrbuf.hxx>
 #include <rtl/ref.hxx>
 #include <cppuhelper/supportsservice.hxx>
 #include <indexentrysupplier.hxx>
 #include <localedata.hxx>
 
+#include <com/sun/star/uno/XComponentContext.hpp>
+
 using namespace ::com::sun::star::uno;
 using namespace ::com::sun::star::lang;
 
diff --git a/i18npool/source/indexentry/indexentrysupplier_asian.cxx b/i18npool/source/indexentry/indexentrysupplier_asian.cxx
index e49e64f805a1..975c9221872d 100644
--- a/i18npool/source/indexentry/indexentrysupplier_asian.cxx
+++ b/i18npool/source/indexentry/indexentrysupplier_asian.cxx
@@ -19,6 +19,7 @@
 
 
 #include <rtl/ustrbuf.hxx>
+#include <collatorImpl.hxx>
 #include <indexentrysupplier_asian.hxx>
 #include "data/indexdata_alphanumeric.h"
 
diff --git a/i18npool/source/indexentry/indexentrysupplier_common.cxx b/i18npool/source/indexentry/indexentrysupplier_common.cxx
index 39d68f78c8f7..3d11a4ac2836 100644
--- a/i18npool/source/indexentry/indexentrysupplier_common.cxx
+++ b/i18npool/source/indexentry/indexentrysupplier_common.cxx
@@ -17,8 +17,8 @@
  *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
  */
 
+#include <collatorImpl.hxx>
 #include <indexentrysupplier_common.hxx>
-#include <com/sun/star/i18n/CollatorOptions.hpp>
 #include <cppuhelper/supportsservice.hxx>
 #include <localedata.hxx>
 
diff --git a/i18npool/source/indexentry/indexentrysupplier_default.cxx b/i18npool/source/indexentry/indexentrysupplier_default.cxx
index 2a4d9c37e5ee..2dc123822e07 100644
--- a/i18npool/source/indexentry/indexentrysupplier_default.cxx
+++ b/i18npool/source/indexentry/indexentrysupplier_default.cxx
@@ -18,6 +18,7 @@
  */
 
 #include <indexentrysupplier_default.hxx>
+#include <collatorImpl.hxx>
 #include <localedata.hxx>
 #include <i18nutil/unicode.hxx>
 #include <com/sun/star/i18n/CollatorOptions.hpp>
diff --git a/i18npool/source/indexentry/indexentrysupplier_ja_phonetic.cxx b/i18npool/source/indexentry/indexentrysupplier_ja_phonetic.cxx
index c31143ff5676..012dbf3b65cb 100644
--- a/i18npool/source/indexentry/indexentrysupplier_ja_phonetic.cxx
+++ b/i18npool/source/indexentry/indexentrysupplier_ja_phonetic.cxx
@@ -19,6 +19,7 @@
 
 
 #include <indexentrysupplier_ja_phonetic.hxx>
+#include <collatorImpl.hxx>
 #include "data/indexdata_alphanumeric.h"
 #include "data/indexdata_ja_phonetic.h"
 #include <string.h>
diff --git a/i18npool/source/inputchecker/inputsequencechecker.cxx b/i18npool/source/inputchecker/inputsequencechecker.cxx
index 17ee82810af3..3989cb74c9ad 100644
--- a/i18npool/source/inputchecker/inputsequencechecker.cxx
+++ b/i18npool/source/inputchecker/inputsequencechecker.cxx
@@ -19,7 +19,7 @@
 
 #include <inputsequencechecker.hxx>
 #include <com/sun/star/i18n/InputSequenceCheckMode.hpp>
-#include <com/sun/star/i18n/UnicodeType.hpp>
+#include <com/sun/star/uno/XComponentContext.hpp>
 #include <cppuhelper/supportsservice.hxx>
 #include <i18nutil/unicode.hxx>
 
diff --git a/i18npool/source/localedata/LocaleNode.cxx b/i18npool/source/localedata/LocaleNode.cxx
index c58f1cdbec16..c79c2dae88bf 100644
--- a/i18npool/source/localedata/LocaleNode.cxx
+++ b/i18npool/source/localedata/LocaleNode.cxx
@@ -18,10 +18,8 @@
  */
 
 #include <stdio.h>
-#include <stdlib.h>
 #include <string.h>
 #include <algorithm>
-#include <iostream>
 #include <memory>
 #include <set>
 #include <vector>
@@ -31,6 +29,7 @@
 
 #include "LocaleNode.hxx"
 #include <com/sun/star/i18n/NumberFormatIndex.hpp>
+#include <com/sun/star/xml/sax/XAttributeList.hpp>
 
 // NOTE: MUST match the Locale versionDTD attribute defined in data/locale.dtd
 #define LOCALE_VERSION_DTD "2.0.3"
diff --git a/i18npool/source/localedata/LocaleNode.hxx b/i18npool/source/localedata/LocaleNode.hxx
index e1b283c72108..66f954352607 100644
--- a/i18npool/source/localedata/LocaleNode.hxx
+++ b/i18npool/source/localedata/LocaleNode.hxx
@@ -19,24 +19,18 @@
 #ifndef INCLUDED_I18NPOOL_SOURCE_LOCALEDATA_LOCALENODE_HXX
 #define INCLUDED_I18NPOOL_SOURCE_LOCALEDATA_LOCALENODE_HXX
 
-#include <com/sun/star/xml/sax/XParser.hpp>
-#include <com/sun/star/xml/sax/XExtendedDocumentHandler.hpp>
-
 #include <string>
 #include <vector>
 #include <memory>
 
-#include <com/sun/star/lang/XComponent.hpp>
-#include <com/sun/star/xml/sax/SAXParseException.hpp>
-#include <com/sun/star/io/XOutputStream.hpp>
-#include <com/sun/star/io/XActiveDataSource.hpp>
+#include <com/sun/star/uno/Sequence.hxx>
+
+namespace com::sun::star::xml::sax { class XAttributeList; }
 
 using namespace ::std;
 using namespace ::cppu;
 using namespace ::com::sun::star::uno;
-using namespace ::com::sun::star::lang;
 using namespace ::com::sun::star::xml::sax;
-using namespace ::com::sun::star::io;
 
 class OFileWriter
 {
diff --git a/i18npool/source/localedata/localedata.cxx b/i18npool/source/localedata/localedata.cxx
index 74dbde3fdb53..454c4045ddef 100644
--- a/i18npool/source/localedata/localedata.cxx
+++ b/i18npool/source/localedata/localedata.cxx
@@ -18,8 +18,10 @@
  */
 
 #include <memory>
+#include <com/sun/star/beans/PropertyValue.hpp>
 #include <com/sun/star/container/XIndexAccess.hpp>
 #include <com/sun/star/lang/IndexOutOfBoundsException.hpp>
+#include <com/sun/star/text/HoriOrientation.hpp>
 #include <cppuhelper/implbase.hxx>
 #include <cppuhelper/supportsservice.hxx>
 #include <localedata.hxx>
@@ -29,10 +31,11 @@
 #include <sal/log.hxx>
 #include <osl/diagnose.h>
 #include <string.h>
-#include <stdio.h>
 #include <rtl/instance.hxx>
 #include <sal/macros.h>
 
+namespace com::sun::star::uno { class XComponentContext; }
+
 using namespace com::sun::star::i18n;
 using namespace com::sun::star::uno;
 using namespace com::sun::star::lang;
@@ -1329,10 +1332,6 @@ LocaleDataImpl::getContinuousNumberingLevels( const lang::Locale& rLocale )
 
 // OutlineNumbering helper class
 
-namespace com{ namespace sun{ namespace star{ namespace lang {
-    struct  Locale;
-}}}}
-
 struct OutlineNumberingLevel_Impl
 {
     OUString        sPrefix;
@@ -1511,7 +1510,6 @@ LocaleDataImpl::getAllInstalledLocaleNames()
 
 using namespace ::com::sun::star::container;
 using namespace ::com::sun::star::beans;
-using namespace ::com::sun::star::style;
 using namespace ::com::sun::star::text;
 
 OutlineNumbering::OutlineNumbering(std::unique_ptr<const OutlineNumberingLevel_Impl[]> pOutlnLevels, int nLevels) :
diff --git a/i18npool/source/localedata/saxparser.cxx b/i18npool/source/localedata/saxparser.cxx
index e55e0361f319..85b4570a6684 100644
--- a/i18npool/source/localedata/saxparser.cxx
+++ b/i18npool/source/localedata/saxparser.cxx
@@ -29,13 +29,10 @@
 
 #include <com/sun/star/lang/XComponent.hpp>
 
-#include <com/sun/star/xml/sax/SAXParseException.hpp>
+#include <com/sun/star/xml/sax/SAXException.hpp>
 #include <com/sun/star/xml/sax/Parser.hpp>
 #include <com/sun/star/xml/sax/XExtendedDocumentHandler.hpp>
 
-#include <com/sun/star/io/XOutputStream.hpp>
-#include <com/sun/star/io/XActiveDataSource.hpp>
-
 #include <cppuhelper/bootstrap.hxx>
 #include <cppuhelper/implbase.hxx>
 
diff --git a/i18npool/source/nativenumber/nativenumbersupplier.cxx b/i18npool/source/nativenumber/nativenumbersupplier.cxx
index 738389739b59..c106d887b53c 100644
--- a/i18npool/source/nativenumber/nativenumbersupplier.cxx
+++ b/i18npool/source/nativenumber/nativenumbersupplier.cxx
@@ -30,6 +30,8 @@
 #include <memory>
 #include <string_view>
 #include <unordered_map>
+#include <com/sun/star/i18n/CharacterClassification.hpp>
+#include <com/sun/star/i18n/NativeNumberMode.hpp>
 #include <com/sun/star/linguistic2/NumberText.hpp>
 
 using namespace ::com::sun::star::uno;
diff --git a/i18npool/source/ordinalsuffix/ordinalsuffix.cxx b/i18npool/source/ordinalsuffix/ordinalsuffix.cxx
index 1f50ff107d19..3ded2a8150d5 100644
--- a/i18npool/source/ordinalsuffix/ordinalsuffix.cxx
+++ b/i18npool/source/ordinalsuffix/ordinalsuffix.cxx
@@ -17,18 +17,18 @@
  *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
  */
 
-#include <com/sun/star/uno/XComponentContext.hpp>
 #include <i18nlangtag/languagetag.hxx>
 #include <i18nlangtag/languagetagicu.hxx>
 #include <sal/log.hxx>
 #include <cppuhelper/supportsservice.hxx>
-#include <string.h>
 #include <ordinalsuffix.hxx>
 
 #include <unicode/rbnf.h>
 #include <unicode/normlzr.h>
 #include <memory>
 
+namespace com::sun::star::uno { class XComponentContext; }
+
 using namespace ::com::sun::star::i18n;
 using namespace ::com::sun::star::uno;
 using namespace ::com::sun::star;
diff --git a/i18npool/source/registerservices/registerservices.cxx b/i18npool/source/registerservices/registerservices.cxx
index 392da9ce9a6c..f6c187c83a56 100644
--- a/i18npool/source/registerservices/registerservices.cxx
+++ b/i18npool/source/registerservices/registerservices.cxx
@@ -20,8 +20,6 @@
 #include <config_locales.h>
 
 #include <com/sun/star/lang/XSingleServiceFactory.hpp>
-#include <com/sun/star/lang/XMultiServiceFactory.hpp>
-#include <com/sun/star/registry/XRegistryKey.hpp>
 
 #include <comphelper/processfactory.hxx>
 #include <cppuhelper/factory.hxx>
@@ -48,7 +46,6 @@
 #include <indexentrysupplier.hxx>
 #include <indexentrysupplier_asian.hxx>
 #include <indexentrysupplier_ja_phonetic.hxx>
-#include <indexentrysupplier_common.hxx>
 #include <indexentrysupplier_default.hxx>
 
 #include <chaptercollator.hxx>
diff --git a/i18npool/source/search/levdis.cxx b/i18npool/source/search/levdis.cxx
index c0ae5732443e..5842abd1eef5 100644
--- a/i18npool/source/search/levdis.cxx
+++ b/i18npool/source/search/levdis.cxx
@@ -55,7 +55,6 @@
     c't 07/89 pages 192-208 and c't 03/94 pages 230-239
 */
 
-#include <string.h>
 #include <algorithm>
 
 #include "levdis.hxx"
diff --git a/i18npool/source/search/levdis.hxx b/i18npool/source/search/levdis.hxx
index 1c4604ffd11e..fc7ed021dfa8 100644
--- a/i18npool/source/search/levdis.hxx
+++ b/i18npool/source/search/levdis.hxx
@@ -20,7 +20,7 @@
 #ifndef INCLUDED_I18NPOOL_SOURCE_SEARCH_LEVDIS_HXX
 #define INCLUDED_I18NPOOL_SOURCE_SEARCH_LEVDIS_HXX
 
-#include <rtl/ustring.hxx>
+#include <sal/types.h>
 #include <memory>
 
 // Sensible default values for a user interface could be:
diff --git a/i18npool/source/search/textsearch.cxx b/i18npool/source/search/textsearch.cxx
index 8ec461c5dd46..13990e55827f 100644
--- a/i18npool/source/search/textsearch.cxx
+++ b/i18npool/source/search/textsearch.cxx
@@ -19,12 +19,9 @@
 
 #include "textsearch.hxx"
 #include "levdis.hxx"
-#include <com/sun/star/lang/Locale.hpp>
-#include <com/sun/star/lang/XMultiServiceFactory.hpp>
 #include <com/sun/star/lang/XSingleServiceFactory.hpp>
 #include <comphelper/processfactory.hxx>
 #include <com/sun/star/i18n/BreakIterator.hpp>
-#include <com/sun/star/i18n/UnicodeType.hpp>
 #include <com/sun/star/util/SearchAlgorithms2.hpp>
 #include <com/sun/star/util/SearchFlags.hpp>
 #include <com/sun/star/i18n/WordType.hpp>
@@ -33,7 +30,6 @@
 #include <com/sun/star/i18n/CharacterClassification.hpp>
 #include <com/sun/star/i18n/KCharacterType.hpp>
 #include <com/sun/star/i18n/Transliteration.hpp>
-#include <com/sun/star/registry/XRegistryKey.hpp>
 #include <cppuhelper/factory.hxx>
 #include <cppuhelper/supportsservice.hxx>
 #include <cppuhelper/weak.hxx>
@@ -41,7 +37,7 @@
 #include <rtl/ustrbuf.hxx>
 #include <sal/log.hxx>
 
-#include <string.h>
+#include <unicode/regex.h>
 
 using namespace ::com::sun::star::util;
 using namespace ::com::sun::star::uno;
diff --git a/i18npool/source/search/textsearch.hxx b/i18npool/source/search/textsearch.hxx
index 0459049842c5..3b58c00749ab 100644
--- a/i18npool/source/search/textsearch.hxx
+++ b/i18npool/source/search/textsearch.hxx
@@ -22,16 +22,21 @@
 
 #include <cppuhelper/implbase.hxx>
 #include <com/sun/star/util/XTextSearch2.hpp>
-#include <com/sun/star/i18n/XBreakIterator.hpp>
-#include <com/sun/star/i18n/XExtendedTransliteration.hpp>
-#include <com/sun/star/i18n/XCharacterClassification.hpp>
 #include <com/sun/star/lang/XServiceInfo.hpp>
-#include <com/sun/star/uno/XComponentContext.hpp>
 
 #include <map>
 #include <memory>
 
-#include <unicode/regex.h>
+#include <unicode/unistr.h>
+#include <unicode/uversion.h>
+
+namespace com::sun::star::i18n { class XBreakIterator; }
+namespace com::sun::star::i18n { class XCharacterClassification; }
+namespace com::sun::star::i18n { class XExtendedTransliteration; }
+namespace com::sun::star::uno { class XComponentContext; }
+namespace icu_63 { class RegexMatcher; }
+
+
 using namespace U_ICU_NAMESPACE;
 typedef U_ICU_NAMESPACE::UnicodeString IcuUniString;
 
diff --git a/i18npool/source/textconversion/genconv_dict.cxx b/i18npool/source/textconversion/genconv_dict.cxx
index f63d94833953..cc3cd81cbc6d 100644
--- a/i18npool/source/textconversion/genconv_dict.cxx
+++ b/i18npool/source/textconversion/genconv_dict.cxx
@@ -24,7 +24,6 @@
 #include <errno.h>
 #include <sal/main.h>
 #include <sal/types.h>
-#include <rtl/strbuf.hxx>
 #include <rtl/ustring.hxx>
 
 #include <vector>
diff --git a/i18npool/source/textconversion/textconversion.cxx b/i18npool/source/textconversion/textconversion.cxx
index 149aaf3b1b4a..7510efb45d82 100644
--- a/i18npool/source/textconversion/textconversion.cxx
+++ b/i18npool/source/textconversion/textconversion.cxx
@@ -17,7 +17,6 @@
  *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
  */
 
-#include <assert.h>
 #include <cppuhelper/supportsservice.hxx>
 #include <textconversion.hxx>
 
diff --git a/i18npool/source/textconversion/textconversionImpl.cxx b/i18npool/source/textconversion/textconversionImpl.cxx
index ecd1ee699b9f..4897e84d4e78 100644
--- a/i18npool/source/textconversion/textconversionImpl.cxx
+++ b/i18npool/source/textconversion/textconversionImpl.cxx
@@ -17,8 +17,8 @@
  *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
  */
 
-#include <assert.h>
 #include <com/sun/star/lang/NoSupportException.hpp>
+#include <com/sun/star/uno/XComponentContext.hpp>
 #include <cppuhelper/supportsservice.hxx>
 #include <textconversionImpl.hxx>
 #include <localedata.hxx>
diff --git a/i18npool/source/textconversion/textconversion_ko.cxx b/i18npool/source/textconversion/textconversion_ko.cxx
index 6552135d1b91..9d88965cd89a 100644
--- a/i18npool/source/textconversion/textconversion_ko.cxx
+++ b/i18npool/source/textconversion/textconversion_ko.cxx
@@ -17,7 +17,6 @@
  *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
  */
 
-#include <assert.h>
 #include <textconversion.hxx>
 #include <com/sun/star/i18n/TextConversionType.hpp>
 #include <com/sun/star/i18n/TextConversionOption.hpp>
diff --git a/i18npool/source/textconversion/textconversion_zh.cxx b/i18npool/source/textconversion/textconversion_zh.cxx
index 0e1348e8cf9b..c9ca672edd3d 100644
--- a/i18npool/source/textconversion/textconversion_zh.cxx
+++ b/i18npool/source/textconversion/textconversion_zh.cxx
@@ -18,7 +18,6 @@
  */
 
 
-#include <assert.h>
 #include <textconversion.hxx>
 #include <com/sun/star/i18n/TextConversionType.hpp>
 #include <com/sun/star/i18n/TextConversionOption.hpp>
diff --git a/i18npool/source/transliteration/chartonum.cxx b/i18npool/source/transliteration/chartonum.cxx
index 80fae61928bf..41a6549b67ef 100644
--- a/i18npool/source/transliteration/chartonum.cxx
+++ b/i18npool/source/transliteration/chartonum.cxx
@@ -17,8 +17,6 @@
  *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
  */
 
-#include <rtl/ustrbuf.hxx>
-
 #include <chartonum.hxx>
 
 using namespace com::sun::star::uno;
diff --git a/i18npool/source/transliteration/ignoreDiacritics_CTL.cxx b/i18npool/source/transliteration/ignoreDiacritics_CTL.cxx
index 3fec622b74db..d706f59f5528 100644
--- a/i18npool/source/transliteration/ignoreDiacritics_CTL.cxx
+++ b/i18npool/source/transliteration/ignoreDiacritics_CTL.cxx
@@ -10,7 +10,6 @@
 #include <rtl/ustrbuf.hxx>
 #include <transliteration_Ignore.hxx>
 #include <unicode/translit.h>
-#include <unicode/uchar.h>
 
 namespace i18npool {
 
diff --git a/i18npool/source/transliteration/ignoreKana.cxx b/i18npool/source/transliteration/ignoreKana.cxx
index 29c8b2f1a31d..7e94558f4fea 100644
--- a/i18npool/source/transliteration/ignoreKana.cxx
+++ b/i18npool/source/transliteration/ignoreKana.cxx
@@ -17,12 +17,13 @@
  *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
  */
 
-#include <com/sun/star/uno/XComponentContext.hpp>
 #include <rtl/ref.hxx>
 
 #include <transliteration_Ignore.hxx>
 #include <transliteration_OneToOne.hxx>
 
+namespace com::sun::star::uno { class XComponentContext; }
+
 using namespace com::sun::star::uno;
 using namespace com::sun::star::lang;
 
diff --git a/i18npool/source/transliteration/ignoreSeparator_ja_JP.cxx b/i18npool/source/transliteration/ignoreSeparator_ja_JP.cxx
index 8f1555608034..bf98d4fed1e4 100644
--- a/i18npool/source/transliteration/ignoreSeparator_ja_JP.cxx
+++ b/i18npool/source/transliteration/ignoreSeparator_ja_JP.cxx
@@ -18,6 +18,7 @@
  */
 
 #include <transliteration_Ignore.hxx>
+#include <i18nutil/oneToOneMapping.hxx>
 
 namespace i18npool {
 
diff --git a/i18npool/source/transliteration/ignoreSpace_ja_JP.cxx b/i18npool/source/transliteration/ignoreSpace_ja_JP.cxx
index f90021eb5daf..df367cd30da3 100644
--- a/i18npool/source/transliteration/ignoreSpace_ja_JP.cxx
+++ b/i18npool/source/transliteration/ignoreSpace_ja_JP.cxx
@@ -18,6 +18,7 @@
  */
 
 #include <transliteration_Ignore.hxx>
+#include <i18nutil/oneToOneMapping.hxx>
 
 namespace i18npool {
 
diff --git a/i18npool/source/transliteration/ignoreTraditionalKanji_ja_JP.cxx b/i18npool/source/transliteration/ignoreTraditionalKanji_ja_JP.cxx
index 7b6b01f8f578..dec55f347855 100644
--- a/i18npool/source/transliteration/ignoreTraditionalKanji_ja_JP.cxx
+++ b/i18npool/source/transliteration/ignoreTraditionalKanji_ja_JP.cxx
@@ -18,6 +18,7 @@
  */
 
 #include <transliteration_Ignore.hxx>
+#include <i18nutil/oneToOneMapping.hxx>
 
 namespace i18npool {
 
diff --git a/i18npool/source/transliteration/ignoreWidth.cxx b/i18npool/source/transliteration/ignoreWidth.cxx
index d0a0343869bd..072a0e988699 100644
--- a/i18npool/source/transliteration/ignoreWidth.cxx
+++ b/i18npool/source/transliteration/ignoreWidth.cxx
@@ -17,12 +17,13 @@
  *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
  */
 
-#include <com/sun/star/uno/XComponentContext.hpp>
 #include <rtl/ref.hxx>
 
 #include <transliteration_Ignore.hxx>
 #include <transliteration_OneToOne.hxx>
 
+namespace com::sun::star::uno { class XComponentContext; }
+
 using namespace com::sun::star::uno;
 using namespace com::sun::star::lang;
 
diff --git a/i18npool/source/transliteration/textToPronounce_zh.cxx b/i18npool/source/transliteration/textToPronounce_zh.cxx
index d513786e4525..9e84ed90320d 100644
--- a/i18npool/source/transliteration/textToPronounce_zh.cxx
+++ b/i18npool/source/transliteration/textToPronounce_zh.cxx
@@ -20,6 +20,7 @@
 #include <sal/config.h>
 
 #include <com/sun/star/i18n/MultipleCharsOutputException.hpp>
+#include <com/sun/star/i18n/TransliterationType.hpp>
 #include <rtl/ustring.hxx>
 #include <rtl/ustrbuf.hxx>
 
diff --git a/i18npool/source/transliteration/transliterationImpl.cxx b/i18npool/source/transliteration/transliterationImpl.cxx
index 2136ed4cdbf5..7c040713e7b2 100644
--- a/i18npool/source/transliteration/transliterationImpl.cxx
+++ b/i18npool/source/transliteration/transliterationImpl.cxx
@@ -24,13 +24,10 @@
 #include <com/sun/star/i18n/LocaleData2.hpp>
 #include <com/sun/star/i18n/TransliterationType.hpp>
 #include <com/sun/star/i18n/TransliterationModulesExtra.hpp>
-#include <com/sun/star/lang/XComponent.hpp>
 
 #include <cppuhelper/supportsservice.hxx>
 #include <rtl/instance.hxx>
-#include <rtl/string.h>
 #include <rtl/ustring.hxx>
-#include <rtl/ustrbuf.hxx>
 
 #include <algorithm>
 
diff --git a/i18npool/source/transliteration/transliteration_Ignore.cxx b/i18npool/source/transliteration/transliteration_Ignore.cxx
index 01444d3bfeac..946e2979b0da 100644
--- a/i18npool/source/transliteration/transliteration_Ignore.cxx
+++ b/i18npool/source/transliteration/transliteration_Ignore.cxx
@@ -17,7 +17,10 @@
  *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
  */
 
+#include <com/sun/star/i18n/TransliterationType.hpp>
+
 #include <transliteration_Ignore.hxx>
+#include <i18nutil/oneToOneMapping.hxx>
 
 using namespace com::sun::star::i18n;
 using namespace com::sun::star::uno;
diff --git a/i18npool/source/transliteration/transliteration_Numeric.cxx b/i18npool/source/transliteration/transliteration_Numeric.cxx
index b479a85bfde1..40853aafa83e 100644
--- a/i18npool/source/transliteration/transliteration_Numeric.cxx
+++ b/i18npool/source/transliteration/transliteration_Numeric.cxx
@@ -18,9 +18,10 @@
  */
 
 
+#include <com/sun/star/i18n/TransliterationType.hpp>
+
 #include <transliteration_Numeric.hxx>
 #include <nativenumbersupplier.hxx>
-#include <defaultnumberingprovider.hxx>
 #include <rtl/ref.hxx>
 
 using namespace com::sun::star::i18n;
diff --git a/i18npool/source/transliteration/transliteration_OneToOne.cxx b/i18npool/source/transliteration/transliteration_OneToOne.cxx
index 986bb555ef7a..484a34db0b0f 100644
--- a/i18npool/source/transliteration/transliteration_OneToOne.cxx
+++ b/i18npool/source/transliteration/transliteration_OneToOne.cxx
@@ -17,7 +17,10 @@
  *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
  */
 
+#include <com/sun/star/i18n/TransliterationType.hpp>
+
 #include <transliteration_OneToOne.hxx>
+#include <i18nutil/oneToOneMapping.hxx>
 
 using namespace com::sun::star::i18n;
 using namespace com::sun::star::uno;
diff --git a/i18npool/source/transliteration/transliteration_body.cxx b/i18npool/source/transliteration/transliteration_body.cxx
index d99c98e26c4a..a320b46d36aa 100644
--- a/i18npool/source/transliteration/transliteration_body.cxx
+++ b/i18npool/source/transliteration/transliteration_body.cxx
@@ -17,17 +17,14 @@
  *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
  */
 
-#include <rtl/ustrbuf.hxx>
 #include <rtl/ref.hxx>
 #include <i18nutil/casefolding.hxx>
 #include <i18nutil/unicode.hxx>
 #include <com/sun/star/i18n/MultipleCharsOutputException.hpp>
+#include <com/sun/star/i18n/TransliterationType.hpp>
 #include <comphelper/processfactory.hxx>
 
-#include <string.h>
-
 #include <characterclassificationImpl.hxx>
-#include <breakiteratorImpl.hxx>
 
 #include <transliteration_body.hxx>
 #include <memory>
diff --git a/i18npool/source/transliteration/transliteration_caseignore.cxx b/i18npool/source/transliteration/transliteration_caseignore.cxx
index 30d02a8d0797..61db2286e714 100644
--- a/i18npool/source/transliteration/transliteration_caseignore.cxx
+++ b/i18npool/source/transliteration/transliteration_caseignore.cxx
@@ -17,15 +17,16 @@
  *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
  */
 
-#include <com/sun/star/uno/XComponentContext.hpp>
+#include <com/sun/star/i18n/TransliterationType.hpp>
 #include <rtl/ref.hxx>
 
-#include <i18nutil/oneToOneMapping.hxx>
 #include <i18nutil/casefolding.hxx>
 #include <i18nutil/transliteration.hxx>
 
 #include <transliteration_caseignore.hxx>
 
+namespace com::sun::star::uno { class XComponentContext; }
+
 using namespace ::com::sun::star::uno;
 using namespace ::com::sun::star::i18n;
 using namespace ::com::sun::star::lang;
diff --git a/i18npool/source/transliteration/transliteration_commonclass.cxx b/i18npool/source/transliteration/transliteration_commonclass.cxx
index 7673a2c25b51..f235859199bb 100644
--- a/i18npool/source/transliteration/transliteration_commonclass.cxx
+++ b/i18npool/source/transliteration/transliteration_commonclass.cxx
@@ -18,7 +18,6 @@
  */
 
 #include <transliteration_commonclass.hxx>
-#include <com/sun/star/i18n/CollatorOptions.hpp>
 #include <cppuhelper/supportsservice.hxx>
 
 using namespace ::com::sun::star::uno;


More information about the Libreoffice-commits mailing list