[LyX/master] Remove strfwd.h.
Pavel Sanda
sanda at lyx.org
Fri Oct 4 19:07:02 UTC 2024
commit 9ccda98e6e6e109b938b4798e235de9455af3897
Author: Pavel Sanda <sanda at lyx.org>
Date: Fri Oct 4 20:42:29 2024 +0200
Remove strfwd.h.
Will break cygwin due to trivstring header.
https://www.mail-archive.com/lyx-devel@lists.lyx.org/msg223056.html
---
development/cmake/configCompiler.h.msvc | 5 --
src/Box.h | 2 +-
src/Buffer.h | 3 +-
src/BufferEncodings.h | 2 -
src/BufferList.h | 3 +-
src/BufferView.h | 1 -
src/Changes.h | 1 -
src/Citation.h | 1 -
src/CmdDef.h | 3 +-
src/Color.h | 2 +-
src/ColorSet.h | 2 +-
src/Converter.h | 3 +-
src/ConverterCache.h | 2 +-
src/CursorSlice.h | 1 -
src/CutAndPaste.h | 1 -
src/ErrorList.h | 2 -
src/Floating.h | 5 +-
src/Font.h | 2 -
src/FontInfo.cpp | 1 -
src/FontInfo.h | 2 +-
src/Format.h | 4 +-
src/KeyMap.h | 2 -
src/LaTeX.h | 1 -
src/Layout.h | 1 -
src/LayoutFile.h | 2 -
src/LyX.h | 3 +-
src/LyXRC.h | 1 -
src/LyXVC.h | 2 -
src/MetricsInfo.h | 1 -
src/PDFOptions.cpp | 1 -
src/Paragraph.h | 1 -
src/ParagraphParameters.h | 1 -
src/PersonalWordList.h | 1 -
src/Spacing.h | 2 -
src/SpellChecker.h | 2 +-
src/Statistics.h | 2 +-
src/TextClass.h | 1 -
src/Thesaurus.h | 2 +-
src/TocBackend.h | 1 -
src/TocBuilder.h | 2 +-
src/frontends/Application.h | 2 +-
src/frontends/Clipboard.h | 2 -
src/frontends/Delegates.h | 2 +-
src/frontends/FontLoader.h | 2 +-
src/frontends/FontMetrics.h | 2 +-
src/frontends/Painter.h | 2 +-
src/frontends/Selection.h | 2 +-
src/frontends/alert.h | 2 +-
src/frontends/qt/CategorizedCombo.h | 2 -
src/frontends/qt/Dialog.h | 2 -
src/frontends/qt/FindAndReplace.h | 1 -
src/frontends/qt/GuiCitation.cpp | 1 -
src/frontends/qt/GuiDelimiter.cpp | 1 -
src/frontends/qt/GuiDelimiter.h | 2 +
src/frontends/qt/GuiSymbols.h | 3 +-
src/frontends/qt/GuiToolbar.h | 2 -
src/frontends/qt/GuiView.h | 2 -
src/frontends/qt/InsetParamsDialog.h | 2 +
src/frontends/qt/InsetParamsWidget.h | 2 +-
src/frontends/qt/LayoutBox.h | 2 +-
src/graphics/GraphicsTypes.h | 3 -
src/graphics/PreviewImage.h | 2 +-
src/insets/Inset.h | 1 -
src/insets/InsetCommandParams.h | 1 -
src/insets/InsetLayout.h | 1 -
src/lyxfind.h | 2 -
src/mathed/InsetMathDecoration.cpp | 1 -
src/mathed/InsetMathMatrix.h | 1 -
src/mathed/MathAutoCorrect.h | 2 +-
src/mathed/MathClass.cpp | 2 -
src/mathed/MathClass.h | 2 +-
src/mathed/MathData.h | 2 -
src/mathed/MathExtern.h | 2 +-
src/mathed/MathFactory.h | 2 -
src/mathed/MathStream.cpp | 1 -
src/mathed/MathStream.h | 1 -
src/mathed/MathSupport.h | 2 +-
src/output_docbook.h | 1 -
src/output_plaintext.h | 2 +-
src/output_xhtml.h | 1 -
src/support/ConsoleApplication.h | 2 +-
src/support/FileName.h | 1 -
src/support/ForkedCalls.h | 2 +-
src/support/Length.h | 2 +-
src/support/Lexer.h | 3 +-
src/support/Makefile.am | 1 -
src/support/Messages.h | 1 -
src/support/ProgressInterface.h | 2 +-
src/support/Systemcall.h | 2 -
src/support/convert.cpp | 1 -
src/support/convert.h | 2 +-
src/support/counter_reps.h | 2 +-
src/support/debug.h | 2 +-
src/support/docstring.h | 61 ++++++++++++++++-
src/support/filetools.h | 1 -
src/support/gettext.h | 2 +-
src/support/lassert.h | 2 +-
src/support/lyxtime.h | 3 +-
src/support/os.h | 2 +-
src/support/qstring_helpers.h | 2 +-
src/support/strfwd.h | 114 --------------------------------
src/support/textutils.h | 3 -
src/support/trivstring.cpp | 1 -
src/support/trivstring.h | 2 -
src/support/unicode.h | 3 +-
src/support/userinfo.h | 2 +-
106 files changed, 112 insertions(+), 256 deletions(-)
diff --git a/development/cmake/configCompiler.h.msvc b/development/cmake/configCompiler.h.msvc
index bec1a4113c..771286af9f 100644
--- a/development/cmake/configCompiler.h.msvc
+++ b/development/cmake/configCompiler.h.msvc
@@ -168,9 +168,4 @@
#define HAVE_MODE_T
#endif
-#if defined(_MSC_VER) && (_MSC_VER >= 1600)
-#include "support/strfwd.h" // always first, to prevent compiler's interpretation/instantiations of some typedef
-#endif
-
-
#endif
diff --git a/src/Box.h b/src/Box.h
index 9522ad0a79..e0aa633b43 100644
--- a/src/Box.h
+++ b/src/Box.h
@@ -12,7 +12,7 @@
#ifndef BOX_H
#define BOX_H
-#include "support/strfwd.h"
+#include <ostream>
namespace lyx {
diff --git a/src/Buffer.h b/src/Buffer.h
index d4e8db8748..fa240a4cbf 100644
--- a/src/Buffer.h
+++ b/src/Buffer.h
@@ -16,13 +16,12 @@
#include "OutputEnums.h"
#include "support/unique_ptr.h"
-#include "support/strfwd.h"
+#include "support/docstring.h"
#include "support/types.h"
#include <map>
#include <list>
#include <set>
-#include <string>
#include <vector>
diff --git a/src/BufferEncodings.h b/src/BufferEncodings.h
index d5a9081f09..917a8371a1 100644
--- a/src/BufferEncodings.h
+++ b/src/BufferEncodings.h
@@ -16,8 +16,6 @@
#include "Encoding.h"
-#include "support/strfwd.h"
-
namespace lyx {
class Buffer;
diff --git a/src/BufferList.h b/src/BufferList.h
index ff5156657b..1384467c73 100644
--- a/src/BufferList.h
+++ b/src/BufferList.h
@@ -12,8 +12,7 @@
#ifndef BUFFER_LIST_H
#define BUFFER_LIST_H
-#include "support/strfwd.h"
-
+#include <string>
#include <vector>
diff --git a/src/BufferView.h b/src/BufferView.h
index 0f673e38e6..deeeb7061b 100644
--- a/src/BufferView.h
+++ b/src/BufferView.h
@@ -20,7 +20,6 @@
#include "TexRow.h"
#include "update_flags.h"
-#include "support/strfwd.h"
#include "support/types.h"
namespace lyx {
diff --git a/src/Changes.h b/src/Changes.h
index d53887556d..1bad1b2bc0 100644
--- a/src/Changes.h
+++ b/src/Changes.h
@@ -15,7 +15,6 @@
#ifndef CHANGES_H
#define CHANGES_H
-#include "support/strfwd.h"
#include "support/types.h"
#include "support/lyxtime.h"
diff --git a/src/Citation.h b/src/Citation.h
index 747599d5f8..4be8c3f09a 100644
--- a/src/Citation.h
+++ b/src/Citation.h
@@ -13,7 +13,6 @@
#define CITATION_H
#include "support/docstring.h"
-#include <string>
#include <vector>
namespace lyx {
diff --git a/src/CmdDef.h b/src/CmdDef.h
index 946730e64e..e250015bee 100644
--- a/src/CmdDef.h
+++ b/src/CmdDef.h
@@ -12,10 +12,9 @@
#ifndef CMDDEF_H
#define CMDDEF_H
-#include "support/strfwd.h"
-
#include <map>
#include <set>
+#include <string>
namespace lyx {
diff --git a/src/Color.h b/src/Color.h
index d67c4989a7..e85efbfbae 100644
--- a/src/Color.h
+++ b/src/Color.h
@@ -21,7 +21,7 @@
#include "ColorCode.h"
-#include "support/strfwd.h"
+#include <string>
namespace lyx {
diff --git a/src/ColorSet.h b/src/ColorSet.h
index c1de480f4f..88684079ba 100644
--- a/src/ColorSet.h
+++ b/src/ColorSet.h
@@ -19,10 +19,10 @@
#ifndef COLORSET_H
#define COLORSET_H
+#include "support/docstring.h"
#include "Color.h"
#include <map>
-#include <string>
namespace lyx {
diff --git a/src/Converter.h b/src/Converter.h
index 720990013a..c1abe62fee 100644
--- a/src/Converter.h
+++ b/src/Converter.h
@@ -13,12 +13,11 @@
#define CONVERTER_H
#include "Graph.h"
-#include "support/trivstring.h"
+#include "support/docstring.h"
#include <memory>
#include <vector>
#include <set>
-#include <string>
namespace lyx {
diff --git a/src/ConverterCache.h b/src/ConverterCache.h
index 72afe293e5..46176c70bf 100644
--- a/src/ConverterCache.h
+++ b/src/ConverterCache.h
@@ -21,7 +21,7 @@
#ifndef CONVERTERCACHE_H
#define CONVERTERCACHE_H
-#include "support/strfwd.h"
+#include <string>
namespace lyx {
diff --git a/src/CursorSlice.h b/src/CursorSlice.h
index eb865de948..6eb6ff5aba 100644
--- a/src/CursorSlice.h
+++ b/src/CursorSlice.h
@@ -18,7 +18,6 @@
#define CURSORSLICE_H
#include "support/types.h"
-#include "support/strfwd.h"
#include "insets/Inset.h"
diff --git a/src/CutAndPaste.h b/src/CutAndPaste.h
index 0692afe596..edea773321 100644
--- a/src/CutAndPaste.h
+++ b/src/CutAndPaste.h
@@ -17,7 +17,6 @@
#include "Author.h"
#include "DocumentClassPtr.h"
-#include "support/strfwd.h"
#include "support/types.h"
#include "frontends/Clipboard.h"
diff --git a/src/ErrorList.h b/src/ErrorList.h
index 29cb03cfe6..267c2f82d0 100644
--- a/src/ErrorList.h
+++ b/src/ErrorList.h
@@ -14,8 +14,6 @@
#include "TexRow.h"
-#include "support/strfwd.h"
-
#include <vector>
diff --git a/src/Floating.h b/src/Floating.h
index ab57c4dd94..6fabe729ce 100644
--- a/src/Floating.h
+++ b/src/Floating.h
@@ -12,10 +12,7 @@
#ifndef FLOATING_H
#define FLOATING_H
-#include "support/strfwd.h"
-
-#include <string>
-
+#include "support/docstring.h"
namespace lyx {
diff --git a/src/Font.h b/src/Font.h
index b59f015eca..61e2a535b0 100644
--- a/src/Font.h
+++ b/src/Font.h
@@ -17,8 +17,6 @@
#include "FontInfo.h"
-#include "support/strfwd.h"
-
namespace lyx {
diff --git a/src/FontInfo.cpp b/src/FontInfo.cpp
index b6f45f88b5..86e995e6d3 100644
--- a/src/FontInfo.cpp
+++ b/src/FontInfo.cpp
@@ -27,7 +27,6 @@
#include "support/lstrings.h"
#include <algorithm>
-#include <ostream>
#include <sstream>
using namespace std;
diff --git a/src/FontInfo.h b/src/FontInfo.h
index bd0f125a7a..008504653e 100644
--- a/src/FontInfo.h
+++ b/src/FontInfo.h
@@ -20,7 +20,7 @@
#include "FontEnums.h"
#include "support/Changer.h"
-#include "support/strfwd.h"
+#include "support/docstring.h"
namespace lyx {
diff --git a/src/Format.h b/src/Format.h
index d1d6d74183..9895b0193b 100644
--- a/src/Format.h
+++ b/src/Format.h
@@ -12,11 +12,9 @@
#ifndef FORMAT_H
#define FORMAT_H
-#include "support/strfwd.h"
-#include "support/trivstring.h"
+#include "support/docstring.h"
#include <vector>
-#include <string>
namespace lyx {
diff --git a/src/KeyMap.h b/src/KeyMap.h
index ac9de6298b..9644835224 100644
--- a/src/KeyMap.h
+++ b/src/KeyMap.h
@@ -17,8 +17,6 @@
#include "FuncRequest.h"
#include "KeySequence.h"
-#include "support/strfwd.h"
-
#include <memory>
#include <vector>
diff --git a/src/LaTeX.h b/src/LaTeX.h
index 502834348b..185b9ebdd9 100644
--- a/src/LaTeX.h
+++ b/src/LaTeX.h
@@ -16,7 +16,6 @@
#include "OutputParams.h"
-#include "support/strfwd.h"
#include "support/FileName.h"
#include "support/signals.h"
diff --git a/src/Layout.h b/src/Layout.h
index c8f08439f5..421ab239fd 100644
--- a/src/Layout.h
+++ b/src/Layout.h
@@ -22,7 +22,6 @@
#include <map>
#include <set>
-#include <string>
namespace lyx {
diff --git a/src/LayoutFile.h b/src/LayoutFile.h
index 87548187ed..ad7effdab6 100644
--- a/src/LayoutFile.h
+++ b/src/LayoutFile.h
@@ -15,8 +15,6 @@
#include "TextClass.h"
-#include "support/strfwd.h"
-
#include <string>
#include <vector>
diff --git a/src/LyX.h b/src/LyX.h
index c35464e210..b7c71ce660 100644
--- a/src/LyX.h
+++ b/src/LyX.h
@@ -14,8 +14,7 @@
#ifndef LYX_H
#define LYX_H
-#include "support/strfwd.h"
-
+#include <string>
#include <vector>
namespace lyx {
diff --git a/src/LyXRC.h b/src/LyXRC.h
index a8b4b04452..8c34712d90 100644
--- a/src/LyXRC.h
+++ b/src/LyXRC.h
@@ -22,7 +22,6 @@
#include "update_flags.h"
#include "support/Length.h"
-#include "support/strfwd.h"
#include "support/userinfo.h"
#include <map>
diff --git a/src/LyXVC.h b/src/LyXVC.h
index fd22357017..48e544808f 100644
--- a/src/LyXVC.h
+++ b/src/LyXVC.h
@@ -15,8 +15,6 @@
#include "support/docstring.h"
#include "support/unique_ptr.h"
-#include <string>
-
namespace lyx {
diff --git a/src/MetricsInfo.h b/src/MetricsInfo.h
index 6f1d404822..48d313ba71 100644
--- a/src/MetricsInfo.h
+++ b/src/MetricsInfo.h
@@ -17,7 +17,6 @@
#include "ColorCode.h"
#include "FontInfo.h"
-#include "support/strfwd.h"
#include "support/Changer.h"
#include "insets/Inset.h"
diff --git a/src/PDFOptions.cpp b/src/PDFOptions.cpp
index c3d057eba8..6a7c80144a 100644
--- a/src/PDFOptions.cpp
+++ b/src/PDFOptions.cpp
@@ -26,7 +26,6 @@
#include "support/lstrings.h"
#include <sstream>
-#include <string>
#include <algorithm>
using namespace std;
diff --git a/src/Paragraph.h b/src/Paragraph.h
index 0de720e2d8..467054499c 100644
--- a/src/Paragraph.h
+++ b/src/Paragraph.h
@@ -19,7 +19,6 @@
#include "LayoutEnums.h"
#include "SpellChecker.h"
-#include "support/strfwd.h"
#include "support/types.h"
#include "insets/InsetCode.h"
diff --git a/src/ParagraphParameters.h b/src/ParagraphParameters.h
index 6f5b4f1b3f..540ea95679 100644
--- a/src/ParagraphParameters.h
+++ b/src/ParagraphParameters.h
@@ -18,7 +18,6 @@
#include "Spacing.h"
#include "support/types.h"
-#include "support/strfwd.h"
#include "support/Length.h"
diff --git a/src/PersonalWordList.h b/src/PersonalWordList.h
index 0194bbcbe6..9abb3fd146 100644
--- a/src/PersonalWordList.h
+++ b/src/PersonalWordList.h
@@ -12,7 +12,6 @@
#ifndef PERSONAL_WORD_LIST_H
#define PERSONAL_WORD_LIST_H
-#include "support/strfwd.h"
#include "support/docstring_list.h"
#include "support/FileName.h"
diff --git a/src/Spacing.h b/src/Spacing.h
index 7311f792b5..d394b28b2b 100644
--- a/src/Spacing.h
+++ b/src/Spacing.h
@@ -12,8 +12,6 @@
#ifndef SPACING_H
#define SPACING_H
-#include "support/strfwd.h"
-
#include <string>
namespace lyx {
diff --git a/src/SpellChecker.h b/src/SpellChecker.h
index 58e5de6bd2..fe8cb9dfc0 100644
--- a/src/SpellChecker.h
+++ b/src/SpellChecker.h
@@ -13,7 +13,7 @@
#ifndef SPELL_BASE_H
#define SPELL_BASE_H
-#include "support/strfwd.h"
+#include "support/docstring.h"
#include <vector>
diff --git a/src/Statistics.h b/src/Statistics.h
index 195af0382c..4ccd276752 100644
--- a/src/Statistics.h
+++ b/src/Statistics.h
@@ -12,7 +12,7 @@
#ifndef STATISTICS_H
#define STATISTICS_H
-#include "support/strfwd.h"
+#include "support/docstring.h"
#include "support/types.h"
namespace lyx {
diff --git a/src/TextClass.h b/src/TextClass.h
index 7626dc329d..ef5ed7789e 100644
--- a/src/TextClass.h
+++ b/src/TextClass.h
@@ -26,7 +26,6 @@
#include <list>
#include <map>
#include <set>
-#include <string>
#include <vector>
#ifdef ERROR
diff --git a/src/Thesaurus.h b/src/Thesaurus.h
index 9c13b044cb..b85c81621c 100644
--- a/src/Thesaurus.h
+++ b/src/Thesaurus.h
@@ -13,7 +13,7 @@
#ifndef THESAURUS_H
#define THESAURUS_H
-#include "support/strfwd.h"
+#include "support/docstring.h"
#include <map>
#include <vector>
diff --git a/src/TocBackend.h b/src/TocBackend.h
index 68eb825c6d..eefe7873c6 100644
--- a/src/TocBackend.h
+++ b/src/TocBackend.h
@@ -21,7 +21,6 @@
#include "Toc.h"
#include "TocBuilder.h"
-#include "support/strfwd.h"
#include "support/unique_ptr.h"
diff --git a/src/TocBuilder.h b/src/TocBuilder.h
index eca655ca16..af9c41cb24 100644
--- a/src/TocBuilder.h
+++ b/src/TocBuilder.h
@@ -14,7 +14,7 @@
#include "Toc.h"
-#include "support/strfwd.h"
+#include "support/docstring.h"
#include <stack>
diff --git a/src/frontends/Application.h b/src/frontends/Application.h
index 4d2d249b23..f52b124e2c 100644
--- a/src/frontends/Application.h
+++ b/src/frontends/Application.h
@@ -15,7 +15,7 @@
#include "FuncCode.h"
#include "update_flags.h"
-#include "support/strfwd.h"
+#include "support/docstring.h"
#include <functional>
diff --git a/src/frontends/Clipboard.h b/src/frontends/Clipboard.h
index 5e16a26bbf..13066eb279 100644
--- a/src/frontends/Clipboard.h
+++ b/src/frontends/Clipboard.h
@@ -14,8 +14,6 @@
#ifndef BASE_CLIPBOARD_H
#define BASE_CLIPBOARD_H
-#include "support/strfwd.h"
-
namespace lyx {
class Cursor;
diff --git a/src/frontends/Delegates.h b/src/frontends/Delegates.h
index c50df6b33f..715505edc6 100644
--- a/src/frontends/Delegates.h
+++ b/src/frontends/Delegates.h
@@ -12,7 +12,7 @@
#ifndef DELEGATES_H
#define DELEGATES_H
-#include "support/strfwd.h"
+#include "support/docstring.h"
namespace lyx {
diff --git a/src/frontends/FontLoader.h b/src/frontends/FontLoader.h
index e876e78200..c59885b77e 100644
--- a/src/frontends/FontLoader.h
+++ b/src/frontends/FontLoader.h
@@ -12,7 +12,7 @@
#ifndef FONTLOADER_H
#define FONTLOADER_H
-#include "support/strfwd.h"
+#include "support/docstring.h"
namespace lyx {
diff --git a/src/frontends/FontMetrics.h b/src/frontends/FontMetrics.h
index c9a1d86cda..28e3dec4dd 100644
--- a/src/frontends/FontMetrics.h
+++ b/src/frontends/FontMetrics.h
@@ -16,7 +16,7 @@
#include "support/mute_warning.h"
-#include "support/strfwd.h"
+#include "support/docstring.h"
#include <vector>
diff --git a/src/frontends/Painter.h b/src/frontends/Painter.h
index 60953341af..d408ca68b2 100644
--- a/src/frontends/Painter.h
+++ b/src/frontends/Painter.h
@@ -13,7 +13,7 @@
#ifndef PAINTER_H
#define PAINTER_H
-#include "support/strfwd.h"
+#include "support/docstring.h"
#include "support/types.h"
namespace lyx {
diff --git a/src/frontends/Selection.h b/src/frontends/Selection.h
index 931cb4470e..1aba5bfdd2 100644
--- a/src/frontends/Selection.h
+++ b/src/frontends/Selection.h
@@ -14,7 +14,7 @@
#ifndef SELECTION_H
#define SELECTION_H
-#include "support/strfwd.h"
+#include "support/docstring.h"
namespace lyx {
namespace frontend {
diff --git a/src/frontends/alert.h b/src/frontends/alert.h
index a4556ca2d4..dd1318614f 100644
--- a/src/frontends/alert.h
+++ b/src/frontends/alert.h
@@ -12,7 +12,7 @@
#ifndef LYX_ALERT_H
#define LYX_ALERT_H
-#include "support/strfwd.h"
+#include "support/docstring.h"
namespace lyx {
diff --git a/src/frontends/qt/CategorizedCombo.h b/src/frontends/qt/CategorizedCombo.h
index 51bdb4ff07..f2a19a69c2 100644
--- a/src/frontends/qt/CategorizedCombo.h
+++ b/src/frontends/qt/CategorizedCombo.h
@@ -17,8 +17,6 @@
#ifndef LYX_CATEGORIZEDCOMBO_H
#define LYX_CATEGORIZEDCOMBO_H
-#include "support/strfwd.h"
-
#include <QComboBox>
diff --git a/src/frontends/qt/Dialog.h b/src/frontends/qt/Dialog.h
index 928513c3fe..b778f18755 100644
--- a/src/frontends/qt/Dialog.h
+++ b/src/frontends/qt/Dialog.h
@@ -16,8 +16,6 @@
#include "insets/InsetCode.h"
-#include "support/strfwd.h"
-
#include <QString>
class QSettings;
diff --git a/src/frontends/qt/FindAndReplace.h b/src/frontends/qt/FindAndReplace.h
index 07c03eab0f..cb4691a07b 100644
--- a/src/frontends/qt/FindAndReplace.h
+++ b/src/frontends/qt/FindAndReplace.h
@@ -18,7 +18,6 @@
#include "ui_FindAndReplaceUi.h"
#include "support/docstring.h"
-#include <string>
namespace lyx {
diff --git a/src/frontends/qt/GuiCitation.cpp b/src/frontends/qt/GuiCitation.cpp
index 1800543d4a..8c3be320ad 100644
--- a/src/frontends/qt/GuiCitation.cpp
+++ b/src/frontends/qt/GuiCitation.cpp
@@ -49,7 +49,6 @@
#include <algorithm>
#include <regex>
-#include <string>
#include <vector>
using namespace std;
diff --git a/src/frontends/qt/GuiDelimiter.cpp b/src/frontends/qt/GuiDelimiter.cpp
index 3d064288f5..3cb70449f6 100644
--- a/src/frontends/qt/GuiDelimiter.cpp
+++ b/src/frontends/qt/GuiDelimiter.cpp
@@ -34,7 +34,6 @@
#include <QScrollBar>
#include <map>
-#include <string>
using namespace std;
diff --git a/src/frontends/qt/GuiDelimiter.h b/src/frontends/qt/GuiDelimiter.h
index e0450a296d..f36ecd10ee 100644
--- a/src/frontends/qt/GuiDelimiter.h
+++ b/src/frontends/qt/GuiDelimiter.h
@@ -12,6 +12,8 @@
#ifndef GUIDELIMITERDIALOG_H
#define GUIDELIMITERDIALOG_H
+#include "support/docstring.h"
+
#include "GuiDialog.h"
#include "ui_DelimiterUi.h"
diff --git a/src/frontends/qt/GuiSymbols.h b/src/frontends/qt/GuiSymbols.h
index 260ce53a74..775969012b 100644
--- a/src/frontends/qt/GuiSymbols.h
+++ b/src/frontends/qt/GuiSymbols.h
@@ -12,11 +12,12 @@
#ifndef GUISYMBOLSDIALOG_H
#define GUISYMBOLSDIALOG_H
+#include "support/docstring.h"
+
#include "DialogView.h"
#include "ui_SymbolsUi.h"
#include <map>
-#include <string>
#include <vector>
namespace lyx {
diff --git a/src/frontends/qt/GuiToolbar.h b/src/frontends/qt/GuiToolbar.h
index 23ee9610d1..1b780b6bbb 100644
--- a/src/frontends/qt/GuiToolbar.h
+++ b/src/frontends/qt/GuiToolbar.h
@@ -20,8 +20,6 @@
#include <QToolBar>
#include <QToolButton>
-#include "support/strfwd.h"
-
class QSettings;
namespace lyx {
diff --git a/src/frontends/qt/GuiView.h b/src/frontends/qt/GuiView.h
index b7726e0230..7ff366c3b4 100644
--- a/src/frontends/qt/GuiView.h
+++ b/src/frontends/qt/GuiView.h
@@ -17,8 +17,6 @@
#include "frontends/Delegates.h"
-#include "support/strfwd.h"
-
#include <QMainWindow>
#include <QLabel>
#include <QMenu>
diff --git a/src/frontends/qt/InsetParamsDialog.h b/src/frontends/qt/InsetParamsDialog.h
index 2683a4da83..cab2c5edf9 100644
--- a/src/frontends/qt/InsetParamsDialog.h
+++ b/src/frontends/qt/InsetParamsDialog.h
@@ -12,6 +12,8 @@
#ifndef INSET_PARAMS_DIALOG_H
#define INSET_PARAMS_DIALOG_H
+#include "support/docstring.h"
+
#include "DialogView.h"
#include "ui_InsetParamsUi.h"
diff --git a/src/frontends/qt/InsetParamsWidget.h b/src/frontends/qt/InsetParamsWidget.h
index 0811ca5e49..8a0fb98fd5 100644
--- a/src/frontends/qt/InsetParamsWidget.h
+++ b/src/frontends/qt/InsetParamsWidget.h
@@ -16,7 +16,7 @@
#include "FuncCode.h"
-#include "support/strfwd.h"
+#include "support/docstring.h"
#include <QWidget>
diff --git a/src/frontends/qt/LayoutBox.h b/src/frontends/qt/LayoutBox.h
index bbccb74ae8..90dde03449 100644
--- a/src/frontends/qt/LayoutBox.h
+++ b/src/frontends/qt/LayoutBox.h
@@ -16,7 +16,7 @@
#ifndef LYX_LAYOUT_BOX_H
#define LYX_LAYOUT_BOX_H
-#include "support/strfwd.h"
+#include "support/docstring.h"
#include <QComboBox>
diff --git a/src/graphics/GraphicsTypes.h b/src/graphics/GraphicsTypes.h
index 90d390cae1..a0625a4a42 100644
--- a/src/graphics/GraphicsTypes.h
+++ b/src/graphics/GraphicsTypes.h
@@ -15,9 +15,6 @@
#ifndef GRAPHICSTYPES_H
#define GRAPHICSTYPES_H
-#include "support/strfwd.h"
-
-
namespace lyx {
namespace graphics {
diff --git a/src/graphics/PreviewImage.h b/src/graphics/PreviewImage.h
index 6d26748092..c36c607a11 100644
--- a/src/graphics/PreviewImage.h
+++ b/src/graphics/PreviewImage.h
@@ -12,7 +12,7 @@
#ifndef PREVIEWIMAGE_H
#define PREVIEWIMAGE_H
-#include "support/strfwd.h"
+#include "support/docstring.h"
namespace lyx {
diff --git a/src/insets/Inset.h b/src/insets/Inset.h
index 336843d41a..19ca818073 100644
--- a/src/insets/Inset.h
+++ b/src/insets/Inset.h
@@ -24,7 +24,6 @@
#include "RowFlags.h"
#include "support/docstring.h"
-#include "support/strfwd.h"
#include "support/types.h"
#include <climits>
diff --git a/src/insets/InsetCommandParams.h b/src/insets/InsetCommandParams.h
index 2faaf3f545..bfb8b04cf6 100644
--- a/src/insets/InsetCommandParams.h
+++ b/src/insets/InsetCommandParams.h
@@ -18,7 +18,6 @@
#include "support/docstring.h"
-#include <string>
#include <vector>
#include <map>
diff --git a/src/insets/InsetLayout.h b/src/insets/InsetLayout.h
index 21f5095d1a..eb1bb1df86 100644
--- a/src/insets/InsetLayout.h
+++ b/src/insets/InsetLayout.h
@@ -20,7 +20,6 @@
#include "support/docstring.h"
#include <set>
-#include <string>
namespace lyx {
diff --git a/src/lyxfind.h b/src/lyxfind.h
index b700e0ce1a..84d2400e2b 100644
--- a/src/lyxfind.h
+++ b/src/lyxfind.h
@@ -16,8 +16,6 @@
#ifndef LYXFIND_H
#define LYXFIND_H
-#include "support/strfwd.h"
-
// FIXME
#include "support/docstring.h"
diff --git a/src/mathed/InsetMathDecoration.cpp b/src/mathed/InsetMathDecoration.cpp
index 960b6b78ab..92140368c3 100644
--- a/src/mathed/InsetMathDecoration.cpp
+++ b/src/mathed/InsetMathDecoration.cpp
@@ -30,7 +30,6 @@
#include "support/lstrings.h"
#include <algorithm>
-#include <ostream>
using namespace lyx::support;
diff --git a/src/mathed/InsetMathMatrix.h b/src/mathed/InsetMathMatrix.h
index 6aa44c1d5c..3b752c22b9 100644
--- a/src/mathed/InsetMathMatrix.h
+++ b/src/mathed/InsetMathMatrix.h
@@ -13,7 +13,6 @@
#define MATH_MATRIXINSET_H
#include "InsetMathGrid.h"
-#include "support/strfwd.h"
namespace lyx {
diff --git a/src/mathed/MathAutoCorrect.h b/src/mathed/MathAutoCorrect.h
index a782d678ee..3a4a25a811 100644
--- a/src/mathed/MathAutoCorrect.h
+++ b/src/mathed/MathAutoCorrect.h
@@ -12,7 +12,7 @@
#ifndef MATHAUTOCORRECT_H
#define MATHAUTOCORRECT_H
-#include "support/strfwd.h"
+#include "support/docstring.h"
namespace lyx {
diff --git a/src/mathed/MathClass.cpp b/src/mathed/MathClass.cpp
index 1d352cd746..f2d015ada5 100644
--- a/src/mathed/MathClass.cpp
+++ b/src/mathed/MathClass.cpp
@@ -20,8 +20,6 @@
#include "support/docstring.h"
#include "support/lassert.h"
-#include <ostream>
-
using namespace std;
namespace lyx {
diff --git a/src/mathed/MathClass.h b/src/mathed/MathClass.h
index af4f884cca..f78ea2bae3 100644
--- a/src/mathed/MathClass.h
+++ b/src/mathed/MathClass.h
@@ -12,7 +12,7 @@
#ifndef MATH_CLASS_H
#define MATH_CLASS_H
-#include "support/strfwd.h"
+#include "support/docstring.h"
namespace lyx {
diff --git a/src/mathed/MathData.h b/src/mathed/MathData.h
index 6ff477f592..dc04a9bb4c 100644
--- a/src/mathed/MathData.h
+++ b/src/mathed/MathData.h
@@ -21,8 +21,6 @@
#include "Dimension.h"
#include "OutputEnums.h"
-#include "support/strfwd.h"
-
#include <cstddef>
#include <vector>
diff --git a/src/mathed/MathExtern.h b/src/mathed/MathExtern.h
index 2544ebf811..a1a9020ac9 100644
--- a/src/mathed/MathExtern.h
+++ b/src/mathed/MathExtern.h
@@ -12,7 +12,7 @@
#ifndef MATH_EXTERN_H
#define MATH_EXTERN_H
-#include "support/strfwd.h"
+#include "support/docstring.h"
namespace lyx {
diff --git a/src/mathed/MathFactory.h b/src/mathed/MathFactory.h
index b6fdb5044a..d653c54fb3 100644
--- a/src/mathed/MathFactory.h
+++ b/src/mathed/MathFactory.h
@@ -14,8 +14,6 @@
#include "MathParser.h"
-#include "support/strfwd.h"
-
#include <map>
namespace lyx {
diff --git a/src/mathed/MathStream.cpp b/src/mathed/MathStream.cpp
index a9d6e0498e..6c0bb31940 100644
--- a/src/mathed/MathStream.cpp
+++ b/src/mathed/MathStream.cpp
@@ -25,7 +25,6 @@
#include <algorithm>
#include <cstring>
-#include <ostream>
#include <FontInfo.h>
using namespace std;
diff --git a/src/mathed/MathStream.h b/src/mathed/MathStream.h
index c49384cdda..bd0e90c3f5 100644
--- a/src/mathed/MathStream.h
+++ b/src/mathed/MathStream.h
@@ -19,7 +19,6 @@
#include "texstream.h"
#include "support/Changer.h"
-#include "support/strfwd.h"
namespace lyx {
diff --git a/src/mathed/MathSupport.h b/src/mathed/MathSupport.h
index 1f83ffb6f2..d3766c693e 100644
--- a/src/mathed/MathSupport.h
+++ b/src/mathed/MathSupport.h
@@ -14,7 +14,7 @@
#define MATH_SUPPORT_H
#include "MathParser_flags.h"
-#include "support/strfwd.h"
+#include "support/docstring.h"
namespace lyx {
diff --git a/src/output_docbook.h b/src/output_docbook.h
index 1fd8d5e896..aaf17559f2 100644
--- a/src/output_docbook.h
+++ b/src/output_docbook.h
@@ -28,7 +28,6 @@
#include "ParagraphList.h"
#include "support/docstream.h"
-#include "support/strfwd.h"
#include "xml.h"
namespace lyx {
diff --git a/src/output_plaintext.h b/src/output_plaintext.h
index 8b2e4f9d1c..63519cf338 100644
--- a/src/output_plaintext.h
+++ b/src/output_plaintext.h
@@ -12,7 +12,7 @@
#ifndef OUTPUT_PLAINTEXT_H
#define OUTPUT_PLAINTEXT_H
-#include "support/strfwd.h"
+#include "support/docstring.h"
#include "support/types.h"
#include <climits>
diff --git a/src/output_xhtml.h b/src/output_xhtml.h
index 3877fb0c7b..930798b777 100644
--- a/src/output_xhtml.h
+++ b/src/output_xhtml.h
@@ -14,7 +14,6 @@
#include "LayoutEnums.h"
-#include "support/strfwd.h"
#include "xml.h"
diff --git a/src/support/ConsoleApplication.h b/src/support/ConsoleApplication.h
index 2b8ed2b80b..4c025cdb8f 100644
--- a/src/support/ConsoleApplication.h
+++ b/src/support/ConsoleApplication.h
@@ -11,7 +11,7 @@
#ifndef CONSOLEAPPLICATION_H
#define CONSOLEAPPLICATION_H
-#include "support/strfwd.h"
+#include <string>
namespace lyx {
diff --git a/src/support/FileName.h b/src/support/FileName.h
index 35f182e428..4611ee8b6f 100644
--- a/src/support/FileName.h
+++ b/src/support/FileName.h
@@ -13,7 +13,6 @@
#define FILENAME_H
#include "support/os.h"
-#include "support/strfwd.h"
#include <ctime>
#include <set>
diff --git a/src/support/ForkedCalls.h b/src/support/ForkedCalls.h
index e64e53c6df..734f193b87 100644
--- a/src/support/ForkedCalls.h
+++ b/src/support/ForkedCalls.h
@@ -15,7 +15,7 @@
#define FORKEDCALLS_H
#include "support/signals.h"
-#include "support/strfwd.h"
+#include "support/docstring.h"
#ifdef HAVE_SYS_TYPES_H
# include <sys/types.h>
diff --git a/src/support/Length.h b/src/support/Length.h
index cb612b6135..0a4e1adb1c 100644
--- a/src/support/Length.h
+++ b/src/support/Length.h
@@ -15,7 +15,7 @@
#ifndef LENGTH_H
#define LENGTH_H
-#include "support/strfwd.h"
+#include "support/docstring.h"
namespace lyx {
diff --git a/src/support/Lexer.h b/src/support/Lexer.h
index 96ac205aba..9ca6e1e6f7 100644
--- a/src/support/Lexer.h
+++ b/src/support/Lexer.h
@@ -17,8 +17,7 @@
#ifndef LEXER_H
#define LEXER_H
-#include "support/strfwd.h"
-#include <string>
+#include "support/docstring.h"
namespace lyx {
diff --git a/src/support/Makefile.am b/src/support/Makefile.am
index efcefb6736..2122cc4a42 100644
--- a/src/support/Makefile.am
+++ b/src/support/Makefile.am
@@ -106,7 +106,6 @@ liblyxsupport_a_SOURCES = \
signals.h \
socktools.cpp \
socktools.h \
- strfwd.h \
Systemcall.cpp \
Systemcall.h \
SystemcallPrivate.h \
diff --git a/src/support/Messages.h b/src/support/Messages.h
index 9f33d45e6f..e4670e4f6f 100644
--- a/src/support/Messages.h
+++ b/src/support/Messages.h
@@ -14,7 +14,6 @@
#include "support/docstring.h"
#include <map>
-#include <string>
namespace lyx {
diff --git a/src/support/ProgressInterface.h b/src/support/ProgressInterface.h
index 4a9a1edb68..2f411abcfe 100644
--- a/src/support/ProgressInterface.h
+++ b/src/support/ProgressInterface.h
@@ -12,7 +12,7 @@
#ifndef LYX_SUPPORT_PROGRESSINTERFACE_H
#define LYX_SUPPORT_PROGRESSINTERFACE_H
-#include "support/strfwd.h"
+#include "support/docstring.h"
class QString;
diff --git a/src/support/Systemcall.h b/src/support/Systemcall.h
index 537a701afa..d73a928097 100644
--- a/src/support/Systemcall.h
+++ b/src/support/Systemcall.h
@@ -15,8 +15,6 @@
#ifndef SYSTEMCALL_H
#define SYSTEMCALL_H
-#include "strfwd.h"
-
namespace lyx {
namespace support {
diff --git a/src/support/convert.cpp b/src/support/convert.cpp
index 46de4b455c..d172469bc8 100644
--- a/src/support/convert.cpp
+++ b/src/support/convert.cpp
@@ -14,7 +14,6 @@
#include "support/convert.h"
#include "support/docstring.h"
-#include <string>
#include <sstream>
//needed for Mac OSX 10.5.2 Leopard
#include <cstdlib>
diff --git a/src/support/convert.h b/src/support/convert.h
index ac0fd2903a..e49f5bd880 100644
--- a/src/support/convert.h
+++ b/src/support/convert.h
@@ -16,7 +16,7 @@
#ifndef CONVERT_H
#define CONVERT_H
-#include "support/strfwd.h"
+#include "support/docstring.h"
namespace lyx {
diff --git a/src/support/counter_reps.h b/src/support/counter_reps.h
index 59305dc427..bafec250f9 100644
--- a/src/support/counter_reps.h
+++ b/src/support/counter_reps.h
@@ -17,7 +17,7 @@
#ifndef COUNTER_REPS_H
#define COUNTER_REPS_H
-#include "support/strfwd.h"
+#include "support/docstring.h"
namespace lyx {
diff --git a/src/support/debug.h b/src/support/debug.h
index f823ee156e..6ab59b5538 100644
--- a/src/support/debug.h
+++ b/src/support/debug.h
@@ -15,7 +15,7 @@
#ifndef LYXDEBUG_H
#define LYXDEBUG_H
-#include "support/strfwd.h"
+#include "support/docstring.h"
// Forward definitions do not work with libc++
// but ios_base has already been defined in strfwd
diff --git a/src/support/docstring.h b/src/support/docstring.h
index 2c2901bf9d..2a760eacee 100644
--- a/src/support/docstring.h
+++ b/src/support/docstring.h
@@ -13,12 +13,71 @@
#ifndef LYX_DOCSTRING_H
#define LYX_DOCSTRING_H
-#include "support/strfwd.h"
+#ifdef USE_WCHAR_T
+
+// Prefer this if possible because GNU libstdc++ has usable
+// std::ctype<wchar_t> locale facets but not
+// std::ctype<boost::uint32_t>. gcc older than 3.4 is also missing
+// usable std::char_traits<boost::uint32_t>.
+namespace lyx { typedef wchar_t char_type; }
+
+#else
+
+#include <cstdint>
+
+#if defined(_MSC_VER) && (_MSC_VER >= 1600)
+namespace lyx { typedef uint32_t char_type; }
+#include "support/numpunct_lyx_char_type.h" // implementation for our char_type needed
+#else
+namespace lyx { typedef std::uint32_t char_type; }
+#endif
+
+#endif
#include <string>
namespace lyx {
+/**
+ * String type for storing the main text in UCS4 encoding.
+ * Use std::string only in cases 7-bit ASCII is to be manipulated
+ * within the variable.
+ */
+typedef std::basic_string<char_type, std::char_traits<char_type>,
+ std::allocator<char_type> > docstring;
+
+/// Base class for UCS4 input streams
+typedef std::basic_istream<char_type, std::char_traits<char_type> > idocstream;
+
+/// Base class for UCS4 output streams
+typedef std::basic_ostream<char_type, std::char_traits<char_type> > odocstream;
+
+/// UCS4 output stringstream
+typedef std::basic_ostringstream<char_type, std::char_traits<char_type>, std::allocator<char_type> > odocstringstream;
+
+#if ! defined(USE_WCHAR_T)
+extern odocstream & operator<<(odocstream &, char);
+#endif
+
+// defined in lstrings.cpp
+docstring const & empty_docstring();
+std::string const & empty_string();
+// defined in docstring.cpp
+bool operator==(docstring const &, char const *);
+
+#ifdef STD_STRING_USES_COW
+template<typename Char> class trivial_string;
+typedef trivial_string<char> trivstring;
+typedef trivial_string<char_type> trivdocstring;
+#else
+typedef std::string trivstring;
+typedef docstring trivdocstring;
+#endif
+
+} // namespace lyx
+
+namespace lyx {
+
/// Creates a docstring from a C string of ASCII characters
docstring const from_ascii(char const *);
diff --git a/src/support/filetools.h b/src/support/filetools.h
index ceb1da62be..14aea9c216 100644
--- a/src/support/filetools.h
+++ b/src/support/filetools.h
@@ -15,7 +15,6 @@
#include "support/docstring.h"
#include <utility>
-#include <string>
#include <set>
namespace lyx {
diff --git a/src/support/gettext.h b/src/support/gettext.h
index 317feec82e..19ba3bf0fa 100644
--- a/src/support/gettext.h
+++ b/src/support/gettext.h
@@ -13,7 +13,7 @@
#ifndef GETTEXT_H
#define GETTEXT_H
-#include "support/strfwd.h"
+#include "support/docstring.h"
namespace lyx {
diff --git a/src/support/lassert.h b/src/support/lassert.h
index 58f299f7af..2d53a3b52f 100644
--- a/src/support/lassert.h
+++ b/src/support/lassert.h
@@ -15,7 +15,7 @@
#ifdef __cplusplus
-#include "support/strfwd.h"
+#include "support/docstring.h"
namespace lyx {
diff --git a/src/support/lyxtime.h b/src/support/lyxtime.h
index 05cbc50841..366ee221a1 100644
--- a/src/support/lyxtime.h
+++ b/src/support/lyxtime.h
@@ -14,9 +14,8 @@
#define LYXTIME_H
#include <time.h>
-#include <string>
-#include "support/strfwd.h"
+#include "support/docstring.h"
namespace lyx {
diff --git a/src/support/os.h b/src/support/os.h
index 20b4e96346..1b664e4444 100644
--- a/src/support/os.h
+++ b/src/support/os.h
@@ -14,7 +14,7 @@
#ifndef OS_H
#define OS_H
-#include "support/strfwd.h"
+#include "support/docstring.h"
#include <cstddef>
diff --git a/src/support/qstring_helpers.h b/src/support/qstring_helpers.h
index 905343e77d..bb608b2334 100644
--- a/src/support/qstring_helpers.h
+++ b/src/support/qstring_helpers.h
@@ -12,7 +12,7 @@
#ifndef QSTRING_HELPERS_H
#define QSTRING_HELPERS_H
-#include "support/strfwd.h"
+#include "support/docstring.h"
class QString;
diff --git a/src/support/strfwd.h b/src/support/strfwd.h
deleted file mode 100644
index eef3a83a0c..0000000000
--- a/src/support/strfwd.h
+++ /dev/null
@@ -1,114 +0,0 @@
-// -*- C++ -*-
-
-// Heavily inspired by /usr/include/c++/4.1/bits
-//
-// Copyright (C) 2001, 2002 Free Software Foundation, Inc.
-//
-// This file is part of the GNU ISO C++ Library. This library is free
-// software; you can redistribute it and/or modify it under the
-// terms of the GNU General Public License as published by the
-// Free Software Foundation; either version 2, or (at your option)
-// any later version.
-
-#ifndef STRFWD_H
-#define STRFWD_H
-
-#ifdef USE_WCHAR_T
-
-// Prefer this if possible because GNU libstdc++ has usable
-// std::ctype<wchar_t> locale facets but not
-// std::ctype<boost::uint32_t>. gcc older than 3.4 is also missing
-// usable std::char_traits<boost::uint32_t>.
-namespace lyx { typedef wchar_t char_type; }
-
-#else
-
-#include <cstdint>
-
-#if defined(_MSC_VER) && (_MSC_VER >= 1600)
-namespace lyx { typedef uint32_t char_type; }
-#include "support/numpunct_lyx_char_type.h" // implementation for our char_type needed
-#else
-namespace lyx { typedef std::uint32_t char_type; }
-#endif
-
-#endif
-
-// Forward definitions do not work with libc++
-// For gcc5 with the new std::string ABI forward declarations would work in
-// principle, but I am not sure whether we want non-standard
-// "namespace __cxx11" in our sources.
-#if defined(USE_LLVM_LIBCPP) || defined(USE_GLIBCXX_CXX11_ABI)
-#include <string>
-#else
-
-namespace std {
-
-template<typename Alloc> class allocator;
-
-template<typename Char> struct char_traits;
-template<> struct char_traits<char>;
-#ifdef USE_WCHAR_T
-template<> struct char_traits<wchar_t>;
-#endif
-
-template<typename Char, typename Traits, typename Alloc> class basic_string;
-typedef basic_string<char, char_traits<char>, allocator<char> > string;
-
-template<class Char, class Traits> class basic_istream;
-template<class Char, class Traits> class basic_ostream;
-template<class Char, class Traits, class Allocator> class basic_ostringstream;
-
-typedef basic_istream<char, char_traits<char> > istream;
-typedef basic_ostream<char, char_traits<char> > ostream;
-typedef basic_ostringstream<char, char_traits<char>, allocator<char> > ostringstream;
-
-} // namespace std
-
-#endif
-
-
-
-
-
-namespace lyx {
-
-/**
- * String type for storing the main text in UCS4 encoding.
- * Use std::string only in cases 7-bit ASCII is to be manipulated
- * within the variable.
- */
-typedef std::basic_string<char_type, std::char_traits<char_type>,
- std::allocator<char_type> > docstring;
-
-/// Base class for UCS4 input streams
-typedef std::basic_istream<char_type, std::char_traits<char_type> > idocstream;
-
-/// Base class for UCS4 output streams
-typedef std::basic_ostream<char_type, std::char_traits<char_type> > odocstream;
-
-/// UCS4 output stringstream
-typedef std::basic_ostringstream<char_type, std::char_traits<char_type>, std::allocator<char_type> > odocstringstream;
-
-#if ! defined(USE_WCHAR_T)
-extern odocstream & operator<<(odocstream &, char);
-#endif
-
-// defined in lstrings.cpp
-docstring const & empty_docstring();
-std::string const & empty_string();
-// defined in docstring.cpp
-bool operator==(docstring const &, char const *);
-
-#ifdef STD_STRING_USES_COW
-template<typename Char> class trivial_string;
-typedef trivial_string<char> trivstring;
-typedef trivial_string<char_type> trivdocstring;
-#else
-typedef std::string trivstring;
-typedef docstring trivdocstring;
-#endif
-
-} // namespace lyx
-
-#endif
diff --git a/src/support/textutils.h b/src/support/textutils.h
index 64498fab70..1409b0a2fb 100644
--- a/src/support/textutils.h
+++ b/src/support/textutils.h
@@ -15,9 +15,6 @@
#ifndef TEXTUTILS_H
#define TEXTUTILS_H
-#include "support/strfwd.h"
-
-
namespace lyx {
/// return true if the char is a line separator
diff --git a/src/support/trivstring.cpp b/src/support/trivstring.cpp
index d2325cbbab..c5102526a8 100644
--- a/src/support/trivstring.cpp
+++ b/src/support/trivstring.cpp
@@ -15,7 +15,6 @@
#ifdef STD_STRING_USES_COW
#include <algorithm>
-#include <ostream>
#include <stdexcept>
using namespace std;
diff --git a/src/support/trivstring.h b/src/support/trivstring.h
index 6b935eee02..3b47f6dc85 100644
--- a/src/support/trivstring.h
+++ b/src/support/trivstring.h
@@ -12,8 +12,6 @@
#ifndef LYX_TRIVSTRING_H
#define LYX_TRIVSTRING_H
-#include "support/strfwd.h"
-
#ifdef STD_STRING_USES_COW
#include <cstdlib>
diff --git a/src/support/unicode.h b/src/support/unicode.h
index 74c37bdf4a..46cea696cc 100644
--- a/src/support/unicode.h
+++ b/src/support/unicode.h
@@ -14,11 +14,10 @@
#ifndef LYX_SUPPORT_UNICODE_H
#define LYX_SUPPORT_UNICODE_H
-#include "support/strfwd.h"
+#include "support/docstring.h"
#include "support/unique_ptr.h"
#include <cstddef>
-#include <string>
#include <vector>
diff --git a/src/support/userinfo.h b/src/support/userinfo.h
index 096e8ff47b..deee3ed809 100644
--- a/src/support/userinfo.h
+++ b/src/support/userinfo.h
@@ -12,7 +12,7 @@
#ifndef USERINFO_H
#define USERINFO_H
-#include "support/strfwd.h"
+#include <string>
namespace lyx {
More information about the lyx-cvs
mailing list