diff --git a/src/libs/cplusplus/CppDocument.cpp b/src/libs/cplusplus/CppDocument.cpp
index 1d9cafc52ad3ddf3ad5208e3e53cbadb309ad385..540f386d53fe2d361d5c47973cd2ae01d936720a 100644
--- a/src/libs/cplusplus/CppDocument.cpp
+++ b/src/libs/cplusplus/CppDocument.cpp
@@ -110,8 +110,8 @@ Document::Document(const QString &fileName)
     _control->setDiagnosticClient(new DocumentDiagnosticClient(this, &_diagnosticMessages));
 
     const QByteArray localFileName = fileName.toUtf8();
-    StringLiteral *fileId = _control->findOrInsertFileName(localFileName.constData(),
-                                                           localFileName.size());
+    StringLiteral *fileId = _control->findOrInsertStringLiteral(localFileName.constData(),
+                                                                localFileName.size());
     _translationUnit = new TranslationUnit(_control, fileId);
     _translationUnit->setQtMocRunEnabled(true);
     _translationUnit->setObjCEnabled(true);
diff --git a/src/shared/cplusplus/Control.cpp b/src/shared/cplusplus/Control.cpp
index 509e79b0a625b1fa27f4a1a4f313244c04c1cd6f..dbe1634069d91b6c4fd554c5f65015a61f2ad7ae 100644
--- a/src/shared/cplusplus/Control.cpp
+++ b/src/shared/cplusplus/Control.cpp
@@ -449,7 +449,6 @@ public:
     LiteralTable<Identifier> identifiers;
     LiteralTable<StringLiteral> stringLiterals;
     LiteralTable<NumericLiteral> numericLiterals;
-    LiteralTable<StringLiteral> fileNames;
 
     // ### replace std::map with lookup tables. ASAP!
 
@@ -534,12 +533,6 @@ Control::NumericLiteralIterator Control::firstNumericLiteral() const
 Control::NumericLiteralIterator Control::lastNumericLiteral() const
 { return d->numericLiterals.end(); }
 
-Control::FileNameIterator Control::firstFileName() const
-{ return d->fileNames.begin(); }
-
-Control::FileNameIterator Control::lastFileName() const
-{ return d->fileNames.end(); }
-
 StringLiteral *Control::findOrInsertStringLiteral(const char *chars, unsigned size)
 { return d->stringLiterals.findOrInsertLiteral(chars, size); }
 
@@ -558,21 +551,6 @@ NumericLiteral *Control::findOrInsertNumericLiteral(const char *chars)
     return findOrInsertNumericLiteral(chars, length);
 }
 
-unsigned Control::fileNameCount() const
-{ return d->fileNames.size(); }
-
-StringLiteral *Control::fileNameAt(unsigned index) const
-{ return d->fileNames.at(index); }
-
-StringLiteral *Control::findOrInsertFileName(const char *chars, unsigned size)
-{ return d->fileNames.findOrInsertLiteral(chars, size); }
-
-StringLiteral *Control::findOrInsertFileName(const char *chars)
-{
-    unsigned length = std::char_traits<char>::length(chars);
-    return findOrInsertFileName(chars, length);
-}
-
 NameId *Control::nameId(Identifier *id)
 { return d->findOrInsertNameId(id); }
 
diff --git a/src/shared/cplusplus/Control.h b/src/shared/cplusplus/Control.h
index 0210de8333ee5fdd3d112bfb36780e97123e2656..6d7fecc8c1f3f292b28574fba97da4e95f252083 100644
--- a/src/shared/cplusplus/Control.h
+++ b/src/shared/cplusplus/Control.h
@@ -153,7 +153,6 @@ public:
     typedef const Identifier *const *IdentifierIterator;
     typedef const StringLiteral *const *StringLiteralIterator;
     typedef const NumericLiteral *const *NumericLiteralIterator;
-    typedef const StringLiteral *const *FileNameIterator;
 
     IdentifierIterator firstIdentifier() const;
     IdentifierIterator lastIdentifier() const;
@@ -164,21 +163,12 @@ public:
     NumericLiteralIterator firstNumericLiteral() const;
     NumericLiteralIterator lastNumericLiteral() const;
 
-    FileNameIterator firstFileName() const;
-    FileNameIterator lastFileName() const;
-
     StringLiteral *findOrInsertStringLiteral(const char *chars, unsigned size);
     StringLiteral *findOrInsertStringLiteral(const char *chars);
 
     NumericLiteral *findOrInsertNumericLiteral(const char *chars, unsigned size);
     NumericLiteral *findOrInsertNumericLiteral(const char *chars);
 
-    StringLiteral *findOrInsertFileName(const char *chars, unsigned size);
-    StringLiteral *findOrInsertFileName(const char *chars);
-
-    unsigned fileNameCount() const;
-    StringLiteral *fileNameAt(unsigned index) const;
-
 private:
     class Data;
     friend class Data;
diff --git a/src/shared/cplusplus/TranslationUnit.cpp b/src/shared/cplusplus/TranslationUnit.cpp
index 2f2024dc2d49daaa3c58c98d4c0b995e27c04ee2..225bd137969cd1f79a7df800387ac13210e3dc9d 100644
--- a/src/shared/cplusplus/TranslationUnit.cpp
+++ b/src/shared/cplusplus/TranslationUnit.cpp
@@ -212,8 +212,8 @@ void TranslationUnit::tokenize()
                     unsigned line = (unsigned) strtoul(tk.spell(), 0, 0);
                     lex(&tk);
                     if (! tk.newline && tk.is(T_STRING_LITERAL)) {
-                        StringLiteral *fileName = control()->findOrInsertFileName(tk.string->chars(),
-                                                                                  tk.string->size());
+                        StringLiteral *fileName = control()->findOrInsertStringLiteral(tk.string->chars(),
+                                                                                       tk.string->size());
                         pushPreprocessorLine(offset, line, fileName);
                         lex(&tk);
                     }