diff --git a/src/libs/utils/bracematcher.cpp b/src/libs/utils/bracematcher.cpp
deleted file mode 100644
index eb56df561fcc17f8acf930ddf7956f8d5ab8b18b..0000000000000000000000000000000000000000
--- a/src/libs/utils/bracematcher.cpp
+++ /dev/null
@@ -1,119 +0,0 @@
-/****************************************************************************
-**
-** Copyright (C) 2016 Konstantin Tokarev <annulen@yandex.ru>
-** Contact: https://www.qt.io/licensing/
-**
-** This file is part of Qt Creator.
-**
-** Commercial License Usage
-** Licensees holding valid commercial Qt licenses may use this file in
-** accordance with the commercial license agreement provided with the
-** Software or, alternatively, in accordance with the terms contained in
-** a written agreement between you and The Qt Company. For licensing terms
-** and conditions see https://www.qt.io/terms-conditions. For further
-** information use the contact form at https://www.qt.io/contact-us.
-**
-** GNU General Public License Usage
-** Alternatively, this file may be used under the terms of the GNU
-** General Public License version 3 as published by the Free Software
-** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT
-** included in the packaging of this file. Please review the following
-** information to ensure the GNU General Public License requirements will
-** be met: https://www.gnu.org/licenses/gpl-3.0.html.
-**
-****************************************************************************/
-
-#include "bracematcher.h"
-
-#include <QTextDocument>
-#include <QTextCursor>
-
-/*!
-    \class Utils::BraceMatcher
-    \brief The BraceMatcher class implements a generic autocompleter of braces
-    and quotes.
-
-    This is a helper class for autocompleter implementations. To use it,
-    define \e brace, \e quote, and \e delimiter characters for a given language.
-*/
-
-namespace Utils {
-
-/*!
- * Adds a pair of characters, corresponding to \a opening and \a closing braces.
- */
-void BraceMatcher::addBraceCharPair(const QChar opening, const QChar closing)
-{
-    m_braceChars[opening] = closing;
-}
-
-/*!
- * Adds a \a quote character.
- */
-void BraceMatcher::addQuoteChar(const QChar quote)
-{
-    m_quoteChars << quote;
-}
-
-/*!
- * Adds a separator character \a sep that should be skipped when overtyping it.
- * For example, it could be ';' or ',' in C-like languages.
- */
-void BraceMatcher::addDelimiterChar(const QChar sep)
-{
-    m_delimiterChars << sep;
-}
-
-bool BraceMatcher::shouldInsertMatchingText(const QTextCursor &tc) const
-{
-    QTextDocument *doc = tc.document();
-    return shouldInsertMatchingText(doc->characterAt(tc.selectionEnd()));
-}
-
-bool BraceMatcher::shouldInsertMatchingText(const QChar lookAhead) const
-{
-    return lookAhead.isSpace()
-        || isQuote(lookAhead)
-        || isDelimiter(lookAhead)
-        || isClosingBrace(lookAhead);
-}
-
-QString BraceMatcher::insertMatchingBrace(const QTextCursor &cursor,
-                                          const QString &text,
-                                          const QChar la,
-                                          int *skippedChars) const
-{
-    if (text.length() != 1)
-        return QString();
-
-    if (!shouldInsertMatchingText(cursor))
-        return QString();
-
-    const QChar ch = text.at(0);
-    if (isQuote(ch)) {
-        if (la != ch)
-            return QString(ch);
-        ++*skippedChars;
-        return QString();
-    }
-
-    if (isOpeningBrace(ch))
-        return QString(m_braceChars[ch]);
-
-    if (isDelimiter(ch) || isClosingBrace(ch)) {
-        if (la == ch)
-            ++*skippedChars;
-    }
-
-    return QString();
-}
-
-/*!
- * Returns true if the character \a c was added as one of character types.
- */
-bool BraceMatcher::isKnownChar(const QChar c) const
-{
-    return isQuote(c) || isDelimiter(c) || isOpeningBrace(c) || isClosingBrace(c);
-}
-
-} // namespace Utils
diff --git a/src/libs/utils/bracematcher.h b/src/libs/utils/bracematcher.h
deleted file mode 100644
index e2fa0928d3db1a2f9ed7739c100df4ba6cbf8406..0000000000000000000000000000000000000000
--- a/src/libs/utils/bracematcher.h
+++ /dev/null
@@ -1,66 +0,0 @@
-/****************************************************************************
-**
-** Copyright (C) 2016 Konstantin Tokarev <annulen@yandex.ru>
-** Contact: https://www.qt.io/licensing/
-**
-** This file is part of Qt Creator.
-**
-** Commercial License Usage
-** Licensees holding valid commercial Qt licenses may use this file in
-** accordance with the commercial license agreement provided with the
-** Software or, alternatively, in accordance with the terms contained in
-** a written agreement between you and The Qt Company. For licensing terms
-** and conditions see https://www.qt.io/terms-conditions. For further
-** information use the contact form at https://www.qt.io/contact-us.
-**
-** GNU General Public License Usage
-** Alternatively, this file may be used under the terms of the GNU
-** General Public License version 3 as published by the Free Software
-** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT
-** included in the packaging of this file. Please review the following
-** information to ensure the GNU General Public License requirements will
-** be met: https://www.gnu.org/licenses/gpl-3.0.html.
-**
-****************************************************************************/
-
-#pragma once
-
-#include "utils_global.h"
-
-#include <QChar>
-#include <QSet>
-#include <QMap>
-
-QT_BEGIN_NAMESPACE
-class QString;
-class QTextCursor;
-QT_END_NAMESPACE
-
-namespace Utils {
-
-class QTCREATOR_UTILS_EXPORT BraceMatcher
-{
-public:
-    void addBraceCharPair(const QChar opening, const QChar closing);
-    void addQuoteChar(const QChar quote);
-    void addDelimiterChar(const QChar delim);
-
-    bool shouldInsertMatchingText(const QTextCursor &tc) const;
-    bool shouldInsertMatchingText(const QChar lookAhead) const;
-
-    QString insertMatchingBrace(const QTextCursor &tc, const QString &text,
-                                const QChar la, int *skippedChars) const;
-
-    bool isOpeningBrace(const QChar c) const { return m_braceChars.contains(c); }
-    bool isClosingBrace(const QChar c) const { return m_braceChars.values().contains(c); }
-    bool isQuote(const QChar c) const { return m_quoteChars.contains(c); }
-    bool isDelimiter(const QChar c) const { return m_delimiterChars.contains(c); }
-    bool isKnownChar(const QChar c) const;
-
-private:
-    QMap<QChar, QChar> m_braceChars;
-    QSet<QChar> m_quoteChars;
-    QSet<QChar> m_delimiterChars;
-};
-
-}  // namespace Utils
diff --git a/src/libs/utils/utils-lib.pri b/src/libs/utils/utils-lib.pri
index 822d247e9038f0b347e4d026e65ba5c052526419..4b04e916095f138d5a9e9babc6e957179ac5ae14 100644
--- a/src/libs/utils/utils-lib.pri
+++ b/src/libs/utils/utils-lib.pri
@@ -89,7 +89,6 @@ SOURCES += \
     $$PWD/basetreeview.cpp \
     $$PWD/qtcassert.cpp \
     $$PWD/elfreader.cpp \
-    $$PWD/bracematcher.cpp \
     $$PWD/proxyaction.cpp \
     $$PWD/elidinglabel.cpp \
     $$PWD/hostosinfo.cpp \
@@ -196,7 +195,6 @@ HEADERS += \
     $$PWD/appmainwindow.h \
     $$PWD/basetreeview.h \
     $$PWD/elfreader.h \
-    $$PWD/bracematcher.h \
     $$PWD/proxyaction.h \
     $$PWD/hostosinfo.h \
     $$PWD/osspecificaspects.h \
diff --git a/src/libs/utils/utils.qbs b/src/libs/utils/utils.qbs
index d761c668900cab08da2df975b1e3f67ba32002e1..89df2d1aa4071dfb8064dca4a1841b96b0631912 100644
--- a/src/libs/utils/utils.qbs
+++ b/src/libs/utils/utils.qbs
@@ -50,8 +50,6 @@ Project {
             "basetreeview.h",
             "benchmarker.cpp",
             "benchmarker.h",
-            "bracematcher.cpp",
-            "bracematcher.h",
             "buildablehelperlibrary.cpp",
             "buildablehelperlibrary.h",
             "camelhumpmatcher.cpp",