diff --git a/src/plugins/debugger/debuggeractions.cpp b/src/plugins/debugger/debuggeractions.cpp
index fc963d0798f25e5bc64c48ea03db538c27417f2e..8bfd4d9c7d4e118ee176a5c9f840de5ba7cdf2b1 100644
--- a/src/plugins/debugger/debuggeractions.cpp
+++ b/src/plugins/debugger/debuggeractions.cpp
@@ -161,35 +161,35 @@ DebuggerSettings *theDebuggerSettings()
     item->setText(QObject::tr("Collapse item"));
 
     //
-    // Dumpers
+    // DebuggingHelper
     //
     item = new SavedAction(instance);
-    instance->insertItem(UseDumpers, item);
+    instance->insertItem(UseDebuggingHelpers, item);
     item->setDefaultValue(true);
-    item->setSettingsKey("DebugMode", "UseDumpers");
+    item->setSettingsKey("DebugMode", "UseDebuggingHelpers");
     item->setText(QObject::tr("Use data dumpers"));
     item->setCheckable(true);
     item->setDefaultValue(true);
 
     item = new SavedAction(instance);
-    instance->insertItem(UseCustomDumperLocation, item);
-    item->setSettingsKey("DebugMode", "CustomDumperLocation");
+    instance->insertItem(UseCustomDebuggingHelperLocation, item);
+    item->setSettingsKey("DebugMode", "CustomDebuggingHelperLocation");
     item->setCheckable(true);
 
     item = new SavedAction(instance);
-    instance->insertItem(CustomDumperLocation, item);
-    item->setSettingsKey("DebugMode", "CustomDumperLocation");
+    instance->insertItem(CustomDebuggingHelperLocation, item);
+    item->setSettingsKey("DebugMode", "CustomDebuggingHelperLocation");
 
     item = new SavedAction(instance);
-    instance->insertItem(DebugDumpers, item);
-    item->setSettingsKey("DebugMode", "DebugDumpers");
+    instance->insertItem(DebugDebuggingHelpers, item);
+    item->setSettingsKey("DebugMode", "DebugDebuggingHelpers");
     item->setText(QObject::tr("Debug data dumpers"));
     item->setCheckable(true);
 
 
     item = new SavedAction(instance);
     item->setText(QObject::tr("Recheck custom dumper availability"));
-    instance->insertItem(RecheckDumpers, item);
+    instance->insertItem(RecheckDebuggingHelpers, item);
 
     //
     // Breakpoints
diff --git a/src/plugins/debugger/debuggeractions.h b/src/plugins/debugger/debuggeractions.h
index cb51e551aa0315ad23dc7fad4dc7df606691d2d4..44b9343c1748c0a9ffb9bf8f0bebd2015002d5d0 100644
--- a/src/plugins/debugger/debuggeractions.h
+++ b/src/plugins/debugger/debuggeractions.h
@@ -92,11 +92,11 @@ enum DebuggerActionCode
     ExpandItem,
     CollapseItem,
 
-    RecheckDumpers,
-    UseDumpers,
-    UseCustomDumperLocation,
-    CustomDumperLocation,
-    DebugDumpers,
+    RecheckDebuggingHelpers,
+    UseDebuggingHelpers,
+    UseCustomDebuggingHelperLocation,
+    CustomDebuggingHelperLocation,
+    DebugDebuggingHelpers,
 
     // Source List
     ListSourceFiles,
diff --git a/src/plugins/debugger/debuggerplugin.cpp b/src/plugins/debugger/debuggerplugin.cpp
index 29a1b19ab8b0fd69a05b59a4979ae1fc4c22b6e6..7cff0f557ede015385f2daf91046f89c1dc63723 100644
--- a/src/plugins/debugger/debuggerplugin.cpp
+++ b/src/plugins/debugger/debuggerplugin.cpp
@@ -321,23 +321,23 @@ QWidget *GdbOptionPage::createPage(QWidget *parent)
 
 ///////////////////////////////////////////////////////////////////////
 //
-// DumperOptionPage
+// DebuggingHelperOptionPage
 //
 ///////////////////////////////////////////////////////////////////////
 
 namespace Debugger {
 namespace Internal {
 
-class DumperOptionPage : public Core::IOptionsPage
+class DebuggingHelperOptionPage : public Core::IOptionsPage
 {
     Q_OBJECT
 
 public:
-    DumperOptionPage() {}
+    DebuggingHelperOptionPage() {}
 
     // IOptionsPage
-    QString id() const { return QLatin1String("DataDumper"); }
-    QString trName() const { return tr("Data Dumper"); }
+    QString id() const { return QLatin1String("DebuggingHelper"); }
+    QString trName() const { return tr("Debugging Helper"); }
     QString category() const { return QLatin1String("Debugger"); }
     QString trCategory() const { return tr("Debugger"); }
 
@@ -349,39 +349,39 @@ private:
     Q_SLOT void updateState();
 
     friend class DebuggerPlugin;
-    Ui::DumperOptionPage m_ui;
+    Ui::DebuggingHelperOptionPage m_ui;
 
     Core::Utils::SavedActionSet m_group;
 };
 
-QWidget *DumperOptionPage::createPage(QWidget *parent)
+QWidget *DebuggingHelperOptionPage::createPage(QWidget *parent)
 {
     QWidget *w = new QWidget(parent);
     m_ui.setupUi(w);
 
     m_ui.dumperLocationChooser->setExpectedKind(Core::Utils::PathChooser::Command);
-    m_ui.dumperLocationChooser->setPromptDialogTitle(tr("Choose Dumper Location"));
+    m_ui.dumperLocationChooser->setPromptDialogTitle(tr("Choose DebuggingHelper Location"));
     m_ui.dumperLocationChooser->setInitialBrowsePathBackup(
         Core::ICore::instance()->resourcePath() + "../../lib");
 
-    connect(m_ui.checkBoxUseDumpers, SIGNAL(toggled(bool)),
+    connect(m_ui.checkBoxUseDebuggingHelpers, SIGNAL(toggled(bool)),
         this, SLOT(updateState()));
-    connect(m_ui.checkBoxUseCustomDumperLocation, SIGNAL(toggled(bool)),
+    connect(m_ui.checkBoxUseCustomDebuggingHelperLocation, SIGNAL(toggled(bool)),
         this, SLOT(updateState()));
 
     m_group.clear();
-    m_group.insert(theDebuggerAction(UseDumpers),
-        m_ui.checkBoxUseDumpers);
-    m_group.insert(theDebuggerAction(UseCustomDumperLocation),
-        m_ui.checkBoxUseCustomDumperLocation);
-    m_group.insert(theDebuggerAction(CustomDumperLocation),
+    m_group.insert(theDebuggerAction(UseDebuggingHelpers),
+        m_ui.checkBoxUseDebuggingHelpers);
+    m_group.insert(theDebuggerAction(UseCustomDebuggingHelperLocation),
+        m_ui.checkBoxUseCustomDebuggingHelperLocation);
+    m_group.insert(theDebuggerAction(CustomDebuggingHelperLocation),
         m_ui.dumperLocationChooser);
 
-    m_group.insert(theDebuggerAction(DebugDumpers),
-        m_ui.checkBoxDebugDumpers);
+    m_group.insert(theDebuggerAction(DebugDebuggingHelpers),
+        m_ui.checkBoxDebugDebuggingHelpers);
 
     m_ui.dumperLocationChooser->
-        setEnabled(theDebuggerAction(UseCustomDumperLocation)->value().toBool());
+        setEnabled(theDebuggerAction(UseCustomDebuggingHelperLocation)->value().toBool());
 
 #ifndef QT_DEBUG
 #if 0
@@ -396,13 +396,13 @@ QWidget *DumperOptionPage::createPage(QWidget *parent)
     return w;
 }
 
-void DumperOptionPage::updateState()
+void DebuggingHelperOptionPage::updateState()
 {
-    m_ui.checkBoxUseCustomDumperLocation->setEnabled(
-        m_ui.checkBoxUseDumpers->isChecked());
+    m_ui.checkBoxUseCustomDebuggingHelperLocation->setEnabled(
+        m_ui.checkBoxUseDebuggingHelpers->isChecked());
     m_ui.dumperLocationChooser->setEnabled(
-        m_ui.checkBoxUseDumpers->isChecked()
-            && m_ui.checkBoxUseCustomDumperLocation->isChecked());
+        m_ui.checkBoxUseDebuggingHelpers->isChecked()
+            && m_ui.checkBoxUseCustomDebuggingHelperLocation->isChecked());
 }
 
 } // namespace Internal
@@ -652,7 +652,7 @@ bool DebuggerPlugin::initialize(const QStringList &arguments, QString *errorMess
    // FIXME:
     m_generalOptionPage = new GdbOptionPage;
     addObject(m_generalOptionPage);
-    m_dumperOptionPage = new DumperOptionPage;
+    m_dumperOptionPage = new DebuggingHelperOptionPage;
     addObject(m_dumperOptionPage);
 
     m_locationMark = 0;
diff --git a/src/plugins/debugger/debuggerplugin.h b/src/plugins/debugger/debuggerplugin.h
index 1d2b233b7a90fe5a29147fb022a7db0190bce903..286ee5aa8bc19e93954e896ec725816c39a519b8 100644
--- a/src/plugins/debugger/debuggerplugin.h
+++ b/src/plugins/debugger/debuggerplugin.h
@@ -57,7 +57,7 @@ namespace Internal {
 class DebuggerManager;
 class DebugMode;
 class GdbOptionPage;
-class DumperOptionPage;
+class DebuggingHelperOptionPage;
 class LocationMark;
 
 class DebuggerPlugin : public ExtensionSystem::IPlugin
@@ -102,14 +102,14 @@ private:
 
     friend class DebuggerManager;
     friend class GdbOptionPage;
-    friend class DumperOptionPage;
+    friend class DebuggingHelperOptionPage;
     friend class DebugMode; // FIXME: Just a hack now so that it can access the views
 
     DebuggerManager *m_manager;
     DebugMode *m_debugMode;
 
     GdbOptionPage *m_generalOptionPage;
-    DumperOptionPage *m_dumperOptionPage;
+    DebuggingHelperOptionPage *m_dumperOptionPage;
 
     QString m_previousMode;
     LocationMark *m_locationMark;
diff --git a/src/plugins/debugger/dumper.pro b/src/plugins/debugger/dumper.pro
index ff67af8743c1482e27f0083e0dca09f3e8659a81..da23ccb7a4cc5e4d348be4439b715975b97f13ed 100644
--- a/src/plugins/debugger/dumper.pro
+++ b/src/plugins/debugger/dumper.pro
@@ -1,6 +1,6 @@
 
 TEMPLATE = lib
-TARGET = Dumper
+TARGET = DebuggingHelper
 CONFIG += shared
 DESTDIR  = ../../../bin
 include(../../qworkbenchlibrary.pri)
diff --git a/src/plugins/debugger/dumperoptionpage.ui b/src/plugins/debugger/dumperoptionpage.ui
index 43a6a1ae8185ae8fb1ef6b7df69ff11b63672f35..0359a39a2eb65d4691b3395527cfe4280775726c 100644
--- a/src/plugins/debugger/dumperoptionpage.ui
+++ b/src/plugins/debugger/dumperoptionpage.ui
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <ui version="4.0">
- <class>DumperOptionPage</class>
- <widget class="QWidget" name="DumperOptionPage">
+ <class>DebuggingHelperOptionPage</class>
+ <widget class="QWidget" name="DebuggingHelperOptionPage">
   <property name="geometry">
    <rect>
     <x>0</x>
@@ -15,7 +15,7 @@
   </property>
   <layout class="QVBoxLayout" name="verticalLayout">
    <item>
-    <widget class="QCheckBox" name="checkBoxUseDumpers">
+    <widget class="QCheckBox" name="checkBoxUseDebuggingHelpers">
      <property name="toolTip">
       <string>This will enable nice display of Qt and Standard Library objects in the Locals&amp;Watchers view</string>
      </property>
@@ -43,7 +43,7 @@
       </spacer>
      </item>
      <item>
-      <widget class="QCheckBox" name="checkBoxUseCustomDumperLocation">
+      <widget class="QCheckBox" name="checkBoxUseCustomDebuggingHelperLocation">
        <property name="toolTip">
         <string>This will load a dumper library</string>
        </property>
@@ -73,7 +73,7 @@
       </spacer>
      </item>
      <item>
-      <widget class="QLabel" name="labelDumperLocation">
+      <widget class="QLabel" name="labelDebuggingHelperLocation">
        <property name="text">
         <string>Location: </string>
        </property>
@@ -85,9 +85,9 @@
     </layout>
    </item>
    <item>
-    <widget class="QCheckBox" name="checkBoxDebugDumpers">
+    <widget class="QCheckBox" name="checkBoxDebugDebuggingHelpers">
      <property name="toolTip">
-      <string notr="true">This is an internal tool to make debugging the Custom Data Dumper code easier. Using this action is in general not needed unless you want do debug Qt Creator itself.</string>
+      <string notr="true">This is an internal tool to make debugging the debugging helper code easier. Using this action is in general not needed unless you want do debug Qt Creator itself.</string>
      </property>
      <property name="text">
       <string>Debug custom dumpers</string>
@@ -108,13 +108,13 @@
     </spacer>
    </item>
   </layout>
-  <zorder>checkBoxDebugDumpers</zorder>
-  <zorder>checkBoxUseDumpers</zorder>
-  <zorder>checkBoxUseDefaultDumperLocation</zorder>
+  <zorder>checkBoxDebugDebuggingHelpers</zorder>
+  <zorder>checkBoxUseDebuggingHelpers</zorder>
+  <zorder>checkBoxUseDefaultDebuggingHelperLocation</zorder>
   <zorder>horizontalSpacer</zorder>
-  <zorder>labelDumperLocation</zorder>
+  <zorder>labelDebuggingHelperLocation</zorder>
   <zorder>horizontalSpacer_2</zorder>
-  <zorder>labelDumperLocation</zorder>
+  <zorder>labelDebuggingHelperLocation</zorder>
  </widget>
  <customwidgets>
   <customwidget>
diff --git a/src/plugins/debugger/gdbengine.cpp b/src/plugins/debugger/gdbengine.cpp
index ec552df2fbffdf12e2ba00298c12a58709cec832..1eba4009e88b377bbb5cfc6a7b6ff3fe28462cf9 100644
--- a/src/plugins/debugger/gdbengine.cpp
+++ b/src/plugins/debugger/gdbengine.cpp
@@ -115,7 +115,7 @@ enum GdbCommandType
     GdbInfoShared,
     GdbInfoProc,
     GdbInfoThreads,
-    GdbQueryDataDumper,
+    GdbQueryDebuggingHelper,
     GdbTemporaryContinue,
     GdbTargetCore,
 
@@ -147,11 +147,11 @@ enum GdbCommandType
     WatchVarCreate,
     WatchEvaluateExpression,
     WatchToolTip,
-    WatchDumpCustomSetup,
-    WatchDumpCustomValue1,           // waiting for gdb ack
-    WatchDumpCustomValue2,           // waiting for actual data
-    WatchDumpCustomValue3,           // macro based
-    WatchDumpCustomEditValue,
+    WatchDebuggingHelperSetup,
+    WatchDebuggingHelperValue1,           // waiting for gdb ack
+    WatchDebuggingHelperValue2,           // waiting for actual data
+    WatchDebuggingHelperValue3,           // macro based
+    WatchDebuggingHelperEditValue,
 };
 
 static int &currentToken()
@@ -211,12 +211,12 @@ void GdbEngine::initializeConnections()
         q, SLOT(showApplicationOutput(QString)),
         Qt::QueuedConnection);
 
-    connect(theDebuggerAction(UseDumpers), SIGNAL(valueChanged(QVariant)),
-        this, SLOT(setUseDumpers(QVariant)));
-    connect(theDebuggerAction(DebugDumpers), SIGNAL(valueChanged(QVariant)),
-        this, SLOT(setDebugDumpers(QVariant)));
-    connect(theDebuggerAction(RecheckDumpers), SIGNAL(triggered()),
-        this, SLOT(recheckCustomDumperAvailability()));
+    connect(theDebuggerAction(UseDebuggingHelpers), SIGNAL(valueChanged(QVariant)),
+        this, SLOT(setUseDebuggingHelpers(QVariant)));
+    connect(theDebuggerAction(DebugDebuggingHelpers), SIGNAL(valueChanged(QVariant)),
+        this, SLOT(setDebugDebuggingHelpers(QVariant)));
+    connect(theDebuggerAction(RecheckDebuggingHelpers), SIGNAL(triggered()),
+        this, SLOT(recheckDebuggingHelperAvailability()));
 
     connect(theDebuggerAction(FormatHexadecimal), SIGNAL(triggered()),
         this, SLOT(reloadRegisters()));
@@ -237,7 +237,7 @@ void GdbEngine::initializeConnections()
 
 void GdbEngine::initializeVariables()
 {
-    m_dataDumperState = DataDumperUninitialized;
+    m_debuggingHelperState = DebuggingHelperUninitialized;
     m_gdbVersion = 100;
     m_gdbBuildVersion = -1;
 
@@ -766,8 +766,8 @@ void GdbEngine::handleResult(const GdbResultRecord & record, int type,
         case GdbInfoShared:
             handleInfoShared(record);
             break;
-        case GdbQueryDataDumper:
-            handleQueryDataDumper(record);
+        case GdbQueryDebuggingHelper:
+            handleQueryDebuggingHelper(record);
             break;
         case GdbTemporaryContinue:
             continueInferior();
@@ -846,19 +846,19 @@ void GdbEngine::handleResult(const GdbResultRecord & record, int type,
         case WatchToolTip:
             handleToolTip(record, cookie.toString());
             break;
-        case WatchDumpCustomValue1:
-            handleDumpCustomValue1(record, cookie.value<WatchData>());
+        case WatchDebuggingHelperValue1:
+            handleDebuggingHelperValue1(record, cookie.value<WatchData>());
             break;
-        case WatchDumpCustomValue2:
-            handleDumpCustomValue2(record, cookie.value<WatchData>());
+        case WatchDebuggingHelperValue2:
+            handleDebuggingHelperValue2(record, cookie.value<WatchData>());
             break;
 
-        case WatchDumpCustomValue3:
-            handleDumpCustomValue3(record, cookie.value<WatchData>());
+        case WatchDebuggingHelperValue3:
+            handleDebuggingHelperValue3(record, cookie.value<WatchData>());
             break;
 
-        case WatchDumpCustomSetup:
-            handleDumpCustomSetup(record);
+        case WatchDebuggingHelperSetup:
+            handleDebuggingHelperSetup(record);
             break;
 
         default:
@@ -913,7 +913,7 @@ void GdbEngine::handleTargetCore(const GdbResultRecord &record)
     //
     qq->reloadRegisters();
 
-    // Gdb-Macro based Dumpers
+    // Gdb-Macro based DebuggingHelpers
     sendCommand(
         "define qdumpqstring\n"
         "set $i = 0\n"
@@ -1104,10 +1104,10 @@ void GdbEngine::handleAqcuiredInferior()
     #endif
     if (theDebuggerBoolSetting(ListSourceFiles))
         reloadSourceFiles();
-    tryLoadCustomDumpers();
+    tryLoadDebuggingHelpers();
 
     #ifndef Q_OS_MAC
-    // intentionally after tryLoadCustomDumpers(),
+    // intentionally after tryLoadDebuggingHelpers(),
     // otherwise we'd interupt solib loading.
     if (theDebuggerBoolSetting(AllPluginBreakpoints)) {
         sendCommand("set auto-solib-add on");
@@ -1216,7 +1216,7 @@ void GdbEngine::handleAsyncOutput(const GdbMi &data)
         return;
     }
 
-    //tryLoadCustomDumpers();
+    //tryLoadDebuggingHelpers();
 
     // jump over well-known frames
     static int stepCounter = 0;
@@ -1523,7 +1523,7 @@ void GdbEngine::exitDebugger()
 
     m_outputCollector.shutdown();
     initializeVariables();
-    //q->settings()->m_debugDumpers = false;
+    //q->settings()->m_debugDebuggingHelpers = false;
 }
 
 
@@ -1631,7 +1631,7 @@ bool GdbEngine::startDebugger()
     //  otherwise program doesn't know.
     //  Pass and Stop may be combined.
     // We need "print" as otherwise we would get no feedback whatsoever
-    // Custom Dumper crashs which happen regularily for when accessing
+    // Custom DebuggingHelper crashs which happen regularily for when accessing
     // uninitialized variables.
     sendCommand("handle SIGSEGV nopass stop print");
 
@@ -1755,7 +1755,7 @@ void GdbEngine::handleAttach()
     handleAqcuiredInferior();
 
     q->resetLocation();
-    recheckCustomDumperAvailability();
+    recheckDebuggingHelperAvailability();
 
     //
     // Stack
@@ -1872,7 +1872,7 @@ void GdbEngine::setTokenBarrier()
     m_oldestAcceptableToken = currentToken();
 }
 
-void GdbEngine::setDebugDumpers(const QVariant &on)
+void GdbEngine::setDebugDebuggingHelpers(const QVariant &on)
 {
     if (on.toBool()) {
         debugMessage("SWITCHING ON DUMPER DEBUGGING");
@@ -2698,7 +2698,7 @@ void GdbEngine::setToolTipExpression(const QPoint &pos, const QString &exp0)
         return;
     }
 
-    if (theDebuggerBoolSetting(DebugDumpers)) {
+    if (theDebuggerBoolSetting(DebugDebuggingHelpers)) {
         // minimize interference
         return;
     }
@@ -2901,7 +2901,7 @@ static void setWatchDataSAddress(WatchData &data, const GdbMi &mi)
         data.saddr = mi.data();
 }
 
-void GdbEngine::setUseDumpers(const QVariant &on)
+void GdbEngine::setUseDebuggingHelpers(const QVariant &on)
 {
     qDebug() << "SWITCHING ON/OFF DUMPER DEBUGGING:" << on;
     // FIXME: a bit too harsh, but otherwise the treeview sometimes look funny
@@ -2910,9 +2910,9 @@ void GdbEngine::setUseDumpers(const QVariant &on)
     updateLocals();
 }
 
-bool GdbEngine::isCustomValueDumperAvailable(const QString &type) const
+bool GdbEngine::hasDebuggingHelperForType(const QString &type) const
 {
-    if (!theDebuggerBoolSetting(UseDumpers))
+    if (!theDebuggerBoolSetting(UseDebuggingHelpers))
         return false;
 
     if (q->startMode() == AttachCore) {
@@ -2921,15 +2921,15 @@ bool GdbEngine::isCustomValueDumperAvailable(const QString &type) const
             || type == "QStringList" || type.endsWith("::QStringList");
     }
 
-    if (theDebuggerBoolSetting(DebugDumpers)
-            && qq->stackHandler()->isDebuggingDumpers())
+    if (theDebuggerBoolSetting(DebugDebuggingHelpers)
+            && qq->stackHandler()->isDebuggingDebuggingHelpers())
         return false;
 
-    if (m_dataDumperState != DataDumperAvailable)
+    if (m_debuggingHelperState != DebuggingHelperAvailable)
         return false;
 
     // simple types
-    if (m_availableSimpleDumpers.contains(type))
+    if (m_availableSimpleDebuggingHelpers.contains(type))
         return true;
 
     // templates
@@ -2937,10 +2937,10 @@ bool GdbEngine::isCustomValueDumperAvailable(const QString &type) const
     QString inner;
     if (!extractTemplate(type, &tmplate, &inner))
         return false;
-    return m_availableSimpleDumpers.contains(tmplate);
+    return m_availableSimpleDebuggingHelpers.contains(tmplate);
 }
 
-void GdbEngine::runDirectDumper(const WatchData &data, bool dumpChildren)
+void GdbEngine::runDirectDebuggingHelper(const WatchData &data, bool dumpChildren)
 {
     Q_UNUSED(dumpChildren);
     QString type = data.type;
@@ -2953,17 +2953,17 @@ void GdbEngine::runDirectDumper(const WatchData &data, bool dumpChildren)
 
     QVariant var;
     var.setValue(data);
-    sendSynchronizedCommand(cmd, WatchDumpCustomValue3, var);
+    sendSynchronizedCommand(cmd, WatchDebuggingHelperValue3, var);
 
     q->showStatusMessage(
         tr("Retrieving data for watch view (%1 requests pending)...")
             .arg(m_pendingRequests + 1), 10000);
 }
 
-void GdbEngine::runCustomDumper(const WatchData &data0, bool dumpChildren)
+void GdbEngine::runDebuggingHelper(const WatchData &data0, bool dumpChildren)
 {
     if (q->startMode() == AttachCore) {
-        runDirectDumper(data0, dumpChildren);
+        runDirectDebuggingHelper(data0, dumpChildren);
         return;
     }
     WatchData data = data0;
@@ -3112,14 +3112,14 @@ void GdbEngine::runCustomDumper(const WatchData &data0, bool dumpChildren)
 
     QVariant var;
     var.setValue(data);
-    sendSynchronizedCommand(cmd, WatchDumpCustomValue1, var);
+    sendSynchronizedCommand(cmd, WatchDebuggingHelperValue1, var);
 
     q->showStatusMessage(
         tr("Retrieving data for watch view (%1 requests pending)...")
             .arg(m_pendingRequests + 1), 10000);
 
     // retrieve response
-    sendSynchronizedCommand("p (char*)qDumpOutBuffer", WatchDumpCustomValue2, var);
+    sendSynchronizedCommand("p (char*)qDumpOutBuffer", WatchDebuggingHelperValue2, var);
 }
 
 void GdbEngine::createGdbVariable(const WatchData &data)
@@ -3171,7 +3171,7 @@ void GdbEngine::updateSubItem(const WatchData &data0)
 
     // a common case that can be easily solved
     if (data.isChildrenNeeded() && isPointerType(data.type)
-        && !isCustomValueDumperAvailable(data.type)) {
+        && !hasDebuggingHelperForType(data.type)) {
         // We sometimes know what kind of children pointers have
         #if DEBUG_SUBITEM
         qDebug() << "IT'S A POINTER";
@@ -3189,11 +3189,11 @@ void GdbEngine::updateSubItem(const WatchData &data0)
         return;
     }
 
-    if (data.isValueNeeded() && isCustomValueDumperAvailable(data.type)) {
+    if (data.isValueNeeded() && hasDebuggingHelperForType(data.type)) {
         #if DEBUG_SUBITEM
         qDebug() << "UPDATE SUBITEM: CUSTOMVALUE";
         #endif
-        runCustomDumper(data, qq->watchHandler()->isExpandedIName(data.iname));
+        runDebuggingHelper(data, qq->watchHandler()->isExpandedIName(data.iname));
         return;
     }
 
@@ -3229,11 +3229,11 @@ void GdbEngine::updateSubItem(const WatchData &data0)
         return;
     }
 
-    if (data.isChildrenNeeded() && isCustomValueDumperAvailable(data.type)) {
+    if (data.isChildrenNeeded() && hasDebuggingHelperForType(data.type)) {
         #if DEBUG_SUBITEM
         qDebug() << "UPDATE SUBITEM: CUSTOMVALUE WITH CHILDREN";
         #endif
-        runCustomDumper(data, true);
+        runDebuggingHelper(data, true);
         return;
     }
 
@@ -3254,11 +3254,11 @@ void GdbEngine::updateSubItem(const WatchData &data0)
         return;
     }
 
-    if (data.isChildCountNeeded() && isCustomValueDumperAvailable(data.type)) {
+    if (data.isChildCountNeeded() && hasDebuggingHelperForType(data.type)) {
         #if DEBUG_SUBITEM
         qDebug() << "UPDATE SUBITEM: CUSTOMVALUE WITH CHILDREN";
         #endif
-        runCustomDumper(data, qq->watchHandler()->isExpandedIName(data.iname));
+        runDebuggingHelper(data, qq->watchHandler()->isExpandedIName(data.iname));
         return;
     }
 
@@ -3339,7 +3339,7 @@ void GdbEngine::updateWatchModel2()
     }
 }
 
-void GdbEngine::handleQueryDataDumper(const GdbResultRecord &record)
+void GdbEngine::handleQueryDebuggingHelper(const GdbResultRecord &record)
 {
     //qDebug() << "DATA DUMPER TRIAL:" << record.toString();
     GdbMi output = record.data.findChild("consolestreamoutput");
@@ -3367,11 +3367,11 @@ void GdbEngine::handleQueryDataDumper(const GdbResultRecord &record)
 
     //qDebug() << "CONTENTS: " << contents.toString();
     //qDebug() << "SIMPLE DUMPERS: " << simple.toString();
-    m_availableSimpleDumpers.clear();
+    m_availableSimpleDebuggingHelpers.clear();
     foreach (const GdbMi &item, simple.children())
-        m_availableSimpleDumpers.append(item.data());
-    if (m_availableSimpleDumpers.isEmpty()) {
-        m_dataDumperState = DataDumperUnavailable;
+        m_availableSimpleDebuggingHelpers.append(item.data());
+    if (m_availableSimpleDebuggingHelpers.isEmpty()) {
+        m_debuggingHelperState = DebuggingHelperUnavailable;
         QMessageBox::warning(q->mainWindow(),
             tr("Cannot find special data dumpers"),
             tr("The debugged binary does not contain information needed for "
@@ -3381,11 +3381,11 @@ void GdbEngine::handleQueryDataDumper(const GdbResultRecord &record)
                     "into your project directly.")
                 );
     } else {
-        m_dataDumperState = DataDumperAvailable;
+        m_debuggingHelperState = DebuggingHelperAvailable;
         q->showStatusMessage(tr("%1 custom dumpers found.")
-            .arg(m_availableSimpleDumpers.size()));
+            .arg(m_availableSimpleDebuggingHelpers.size()));
     }
-    //qDebug() << "DATA DUMPERS AVAILABLE" << m_availableSimpleDumpers;
+    //qDebug() << "DATA DUMPERS AVAILABLE" << m_availableSimpleDebuggingHelpers;
 }
 
 void GdbEngine::sendWatchParameters(const QByteArray &params0)
@@ -3436,7 +3436,7 @@ void GdbEngine::handleVarCreate(const GdbResultRecord &record,
     if (record.resultClass == GdbResultDone) {
         data.variable = data.iname;
         setWatchDataType(data, record.data.findChild("type"));
-        if (isCustomValueDumperAvailable(data.type)) {
+        if (hasDebuggingHelperForType(data.type)) {
             // we do not trust gdb if we have a custom dumper
             if (record.data.findChild("children").isValid())
                 data.setChildrenUnneeded();
@@ -3484,7 +3484,7 @@ void GdbEngine::handleEvaluateExpression(const GdbResultRecord &record,
     //updateWatchModel2();
 }
 
-void GdbEngine::handleDumpCustomSetup(const GdbResultRecord &record)
+void GdbEngine::handleDebuggingHelperSetup(const GdbResultRecord &record)
 {
     //qDebug() << "CUSTOM SETUP RESULT: " << record.toString();
     if (record.resultClass == GdbResultDone) {
@@ -3495,7 +3495,7 @@ void GdbEngine::handleDumpCustomSetup(const GdbResultRecord &record)
     }
 }
 
-void GdbEngine::handleDumpCustomValue1(const GdbResultRecord &record,
+void GdbEngine::handleDebuggingHelperValue1(const GdbResultRecord &record,
     const WatchData &data0)
 {
     WatchData data = data0;
@@ -3510,7 +3510,7 @@ void GdbEngine::handleDumpCustomValue1(const GdbResultRecord &record,
         //qDebug() << "CUSTOM DUMPER ERROR MESSAGE: " << msg;
 #ifdef QT_DEBUG
         // Make debugging of dumpers easier
-        if (theDebuggerBoolSetting(DebugDumpers)
+        if (theDebuggerBoolSetting(DebugDebuggingHelpers)
                 && msg.startsWith("The program being debugged stopped while")
                 && msg.contains("qDumpObjectData440")) {
             // Fake full stop
@@ -3527,7 +3527,7 @@ void GdbEngine::handleDumpCustomValue1(const GdbResultRecord &record,
     }
 }
 
-void GdbEngine::handleDumpCustomValue2(const GdbResultRecord &record,
+void GdbEngine::handleDebuggingHelperValue2(const GdbResultRecord &record,
     const WatchData &data0)
 {
     WatchData data = data0;
@@ -3627,7 +3627,7 @@ void GdbEngine::handleDumpCustomValue2(const GdbResultRecord &record,
     }
 }
 
-void GdbEngine::handleDumpCustomValue3(const GdbResultRecord &record,
+void GdbEngine::handleDebuggingHelperValue3(const GdbResultRecord &record,
     const WatchData &data0)
 {
     WatchData data = data0;
@@ -3668,7 +3668,7 @@ void GdbEngine::handleDumpCustomValue3(const GdbResultRecord &record,
             QString cmd = "qdumpqstring (" + data1.exp + ")";
             QVariant var;
             var.setValue(data1);
-            sendSynchronizedCommand(cmd, WatchDumpCustomValue3, var);
+            sendSynchronizedCommand(cmd, WatchDebuggingHelperValue3, var);
         }
     } else {
         data.setValue("<unavailable>");
@@ -3932,7 +3932,7 @@ void GdbEngine::handleVarListChildrenHelper(const GdbMi &item,
             data.exp = parent.exp + '.' + exp;
         }
 
-        if (isCustomValueDumperAvailable(data.type)) {
+        if (hasDebuggingHelperForType(data.type)) {
             // we do not trust gdb if we have a custom dumper
             data.setValueNeeded();
             data.setChildCountNeeded();
@@ -3990,8 +3990,8 @@ void GdbEngine::handleToolTip(const GdbResultRecord &record,
         if (what == "create") {
             setWatchDataType(m_toolTip, record.data.findChild("type"));
             setWatchDataChildCount(m_toolTip, record.data.findChild("numchild"));
-            if (isCustomValueDumperAvailable(m_toolTip.type))
-                runCustomDumper(m_toolTip, false);
+            if (hasDebuggingHelperForType(m_toolTip.type))
+                runDebuggingHelper(m_toolTip, false);
             else
                 q->showStatusMessage(tr("Retrieving data for tooltip..."), 10000);
                 sendCommand("-data-evaluate-expression " + m_toolTip.exp,
@@ -4041,18 +4041,18 @@ void GdbEngine::assignValueInDebugger(const QString &expression, const QString &
 
 QString GdbEngine::dumperLibraryName() const
 {
-    if (theDebuggerAction(UseCustomDumperLocation)->value().toBool())
-        return theDebuggerAction(CustomDumperLocation)->value().toString();
+    if (theDebuggerAction(UseCustomDebuggingHelperLocation)->value().toBool())
+        return theDebuggerAction(CustomDebuggingHelperLocation)->value().toString();
     return q->m_dumperLib;
 }
 
-void GdbEngine::tryLoadCustomDumpers()
+void GdbEngine::tryLoadDebuggingHelpers()
 {
-    if (m_dataDumperState != DataDumperUninitialized)
+    if (m_debuggingHelperState != DebuggingHelperUninitialized)
         return;
 
     PENDING_DEBUG("TRY LOAD CUSTOM DUMPERS");
-    m_dataDumperState = DataDumperUnavailable;
+    m_debuggingHelperState = DebuggingHelperUnavailable;
     QString lib = dumperLibraryName();
     //qDebug() << "DUMPERLIB: " << lib;
 
@@ -4064,44 +4064,44 @@ void GdbEngine::tryLoadCustomDumpers()
         return;
     }
 
-    m_dataDumperState = DataDumperLoadTried;
+    m_debuggingHelperState = DebuggingHelperLoadTried;
 #if defined(Q_OS_WIN)
     sendCommand("sharedlibrary .*"); // for LoadLibraryA
     //sendCommand("handle SIGSEGV pass stop print");
     //sendCommand("set unwindonsignal off");
     sendCommand("call LoadLibraryA(\"" + lib + "\")",
-        WatchDumpCustomSetup);
+        WatchDebuggingHelperSetup);
     sendCommand("sharedlibrary " + dotEscape(lib));
 #elif defined(Q_OS_MAC)
     //sendCommand("sharedlibrary libc"); // for malloc
     //sendCommand("sharedlibrary libdl"); // for dlopen
     QString flag = QString::number(RTLD_NOW);
     sendCommand("call (void)dlopen(\"" + lib + "\", " + flag + ")",
-        WatchDumpCustomSetup);
+        WatchDebuggingHelperSetup);
     //sendCommand("sharedlibrary " + dotEscape(lib));
-    m_dataDumperState = DataDumperLoadTried;
+    m_debuggingHelperState = DebuggingHelperLoadTried;
 #else
     //sendCommand("p dlopen");
     QString flag = QString::number(RTLD_NOW);
     sendCommand("sharedlibrary libc"); // for malloc
     sendCommand("sharedlibrary libdl"); // for dlopen
     sendCommand("call (void)dlopen(\"" + lib + "\", " + flag + ")",
-        WatchDumpCustomSetup);
+        WatchDebuggingHelperSetup);
     // some older systems like CentOS 4.6 prefer this:
     sendCommand("call (void)__dlopen(\"" + lib + "\", " + flag + ")",
-        WatchDumpCustomSetup);
+        WatchDebuggingHelperSetup);
     sendCommand("sharedlibrary " + dotEscape(lib));
 #endif
     // retreive list of dumpable classes
     sendCommand("call qDumpObjectData440(1,%1+1,0,0,0,0,0,0)");
-    sendCommand("p (char*)qDumpOutBuffer", GdbQueryDataDumper);
+    sendCommand("p (char*)qDumpOutBuffer", GdbQueryDebuggingHelper);
 }
 
-void GdbEngine::recheckCustomDumperAvailability()
+void GdbEngine::recheckDebuggingHelperAvailability()
 {
     // retreive list of dumpable classes
     sendCommand("call qDumpObjectData440(1,%1+1,0,0,0,0,0,0)");
-    sendCommand("p (char*)qDumpOutBuffer", GdbQueryDataDumper);
+    sendCommand("p (char*)qDumpOutBuffer", GdbQueryDebuggingHelper);
 }
 
 IDebuggerEngine *createGdbEngine(DebuggerManager *parent)
diff --git a/src/plugins/debugger/gdbengine.h b/src/plugins/debugger/gdbengine.h
index 79d95f34fcabf90c7fda1160d89a63409f56613f..3b4b84fa59be049b4d4892f56b766bcbd2813350 100644
--- a/src/plugins/debugger/gdbengine.h
+++ b/src/plugins/debugger/gdbengine.h
@@ -72,12 +72,12 @@ struct GdbCookie
     QVariant cookie;
 };
 
-enum DataDumperState
+enum DebuggingHelperState
 {
-    DataDumperUninitialized,
-    DataDumperLoadTried,
-    DataDumperAvailable,
-    DataDumperUnavailable,
+    DebuggingHelperUninitialized,
+    DebuggingHelperLoadTried,
+    DebuggingHelperAvailable,
+    DebuggingHelperUnavailable,
 };
 
 
@@ -130,8 +130,8 @@ private:
     void loadSymbols(const QString &moduleName);
     void loadAllSymbols();
 
-    Q_SLOT void setDebugDumpers(const QVariant &on);
-    Q_SLOT void setUseDumpers(const QVariant &on);
+    Q_SLOT void setDebugDebuggingHelpers(const QVariant &on);
+    Q_SLOT void setUseDebuggingHelpers(const QVariant &on);
 
     //
     // Own stuff
@@ -306,11 +306,11 @@ private:
     void handleTypeContents(const QString &output);
     void maybeHandleInferiorPidChanged(const QString &pid);
 
-    void tryLoadCustomDumpers();
-    Q_SLOT void recheckCustomDumperAvailability();
-    void runCustomDumper(const WatchData &data, bool dumpChildren);
-    void runDirectDumper(const WatchData &data, bool dumpChildren);
-    bool isCustomValueDumperAvailable(const QString &type) const;
+    void tryLoadDebuggingHelpers();
+    Q_SLOT void recheckDebuggingHelperAvailability();
+    void runDebuggingHelper(const WatchData &data, bool dumpChildren);
+    void runDirectDebuggingHelper(const WatchData &data, bool dumpChildren);
+    bool hasDebuggingHelperForType(const QString &type) const;
 
     void handleVarListChildren(const GdbResultRecord &record,
         const WatchData &cookie);
@@ -321,15 +321,15 @@ private:
         const WatchData &cookie);
     void handleToolTip(const GdbResultRecord &record,
         const QString &cookie);
-    void handleQueryDataDumper(const GdbResultRecord &record);
-    void handleDumpCustomValue1(const GdbResultRecord &record,
+    void handleQueryDebuggingHelper(const GdbResultRecord &record);
+    void handleDebuggingHelperValue1(const GdbResultRecord &record,
         const WatchData &cookie);
-    void handleDumpCustomValue2(const GdbResultRecord &record,
+    void handleDebuggingHelperValue2(const GdbResultRecord &record,
         const WatchData &cookie);
-    void handleDumpCustomValue3(const GdbResultRecord &record,
+    void handleDebuggingHelperValue3(const GdbResultRecord &record,
         const WatchData &cookie);
-    void handleDumpCustomEditValue(const GdbResultRecord &record);
-    void handleDumpCustomSetup(const GdbResultRecord &record);
+    void handleDebuggingHelperEditValue(const GdbResultRecord &record);
+    void handleDebuggingHelperSetup(const GdbResultRecord &record);
     void handleStackListLocals(const GdbResultRecord &record);
     void handleStackListArguments(const GdbResultRecord &record);
     void handleVarListChildrenHelper(const GdbMi &child,
@@ -340,11 +340,11 @@ private:
     QString m_editedData;
     int m_pendingRequests;
 
-    QStringList m_availableSimpleDumpers;
+    QStringList m_availableSimpleDebuggingHelpers;
     QString m_namespace; // namespace used in "namespaced Qt";
     int m_qtVersion; // Qt version used in the debugged program
     
-    DataDumperState m_dataDumperState; // state of qt creator dumpers
+    DebuggingHelperState m_debuggingHelperState;
     QList<GdbMi> m_currentFunctionArgs;
     QString m_currentFrame;
     QMap<QString, QString> m_varToType;
diff --git a/src/plugins/debugger/scriptengine.cpp b/src/plugins/debugger/scriptengine.cpp
index 413270bb67353f6f81b4b01dd898837572559d8c..55b21cc7cc706d0ee6995249103d59933d1bbb9b 100644
--- a/src/plugins/debugger/scriptengine.cpp
+++ b/src/plugins/debugger/scriptengine.cpp
@@ -240,7 +240,55 @@ void ScriptEngine::continueInferior()
 
 void ScriptEngine::runInferior()
 {
+    //QDir dir(QApplication::applicationDirPath());
+    //if (dir.dirName() == QLatin1String("debug") || dir.dirName() == QLatin1String("release"))
+    //    dir.cdUp();
+    //dir.cdUp();
+    //dir.cdUp();
+    QDir dir("/home/apoenitz/dev/qtscriptgenerator");
+    if (!dir.cd("plugins")) {
+        fprintf(stderr, "plugins folder does not exist -- did you build the bindings?\n");
+        return;
+    }
+    QStringList paths = qApp->libraryPaths();
+    paths <<  dir.absolutePath();
+    qApp->setLibraryPaths(paths);
+
     SDEBUG("ScriptEngine::runInferior()");
+    QStringList extensions;
+    extensions << "qt.core"
+               << "qt.gui"
+               << "qt.xml"
+               << "qt.svg"
+               << "qt.network"
+               << "qt.sql"
+               << "qt.opengl"
+               << "qt.webkit"
+               << "qt.xmlpatterns"
+               << "qt.uitools";
+    QStringList failExtensions;
+    foreach (const QString &ext, extensions) {
+        QScriptValue ret = m_scriptEngine->importExtension(ext);
+        if (ret.isError())
+            failExtensions.append(ext);
+    }
+    if (!failExtensions.isEmpty()) {
+        if (failExtensions.size() == extensions.size()) {
+            qWarning("Failed to import Qt bindings!\n"
+                     "Plugins directory searched: %s/script\n"
+                     "Make sure that the bindings have been built, "
+                     "and that this executable and the plugins are "
+                     "using compatible Qt libraries.", qPrintable(dir.absolutePath()));
+        } else {
+            qWarning("Failed to import some Qt bindings: %s\n"
+                     "Plugins directory searched: %s/script\n"
+                     "Make sure that the bindings have been built, "
+                     "and that this executable and the plugins are "
+                     "using compatible Qt libraries.",
+                     qPrintable(failExtensions.join(", ")), qPrintable(dir.absolutePath()));
+        }
+    }
+
     QScriptValue result = m_scriptEngine->evaluate(m_scriptContents, m_scriptFileName);
 }
 
diff --git a/src/plugins/debugger/stackhandler.cpp b/src/plugins/debugger/stackhandler.cpp
index d8beb63a3e66631f04f50e81e2dfe3d0ee7f0c3d..a02a80a3523dfff4a6cc69911706b67537c93c88 100644
--- a/src/plugins/debugger/stackhandler.cpp
+++ b/src/plugins/debugger/stackhandler.cpp
@@ -183,7 +183,7 @@ QList<StackFrame> StackHandler::frames() const
     return m_stackFrames;
 }
 
-bool StackHandler::isDebuggingDumpers() const
+bool StackHandler::isDebuggingDebuggingHelpers() const
 {
     for (int i = m_stackFrames.size(); --i >= 0; )
         if (m_stackFrames.at(i).function.startsWith("qDumpObjectData"))
diff --git a/src/plugins/debugger/stackhandler.h b/src/plugins/debugger/stackhandler.h
index c928a6fed92913351031f1e9072ecf65a8a6639d..920436deef22079ba4618fb90becc413544f1af6 100644
--- a/src/plugins/debugger/stackhandler.h
+++ b/src/plugins/debugger/stackhandler.h
@@ -74,7 +74,7 @@ public:
     // Called from StackHandler after a new stack list has been received
     void removeAll();
     QAbstractItemModel *stackModel() { return this; }
-    bool isDebuggingDumpers() const;
+    bool isDebuggingDebuggingHelpers() const;
 
 private:
     // QAbstractTableModel
diff --git a/src/plugins/debugger/watchwindow.cpp b/src/plugins/debugger/watchwindow.cpp
index a4d65d6280b207539e5c9cd02a5a982c3e2a6263..75c9c8c1336105e26c422ae459d96b9eeac67085 100644
--- a/src/plugins/debugger/watchwindow.cpp
+++ b/src/plugins/debugger/watchwindow.cpp
@@ -189,8 +189,8 @@ void WatchWindow::contextMenuEvent(QContextMenuEvent *ev)
     menu.addAction(act3);
 
     menu.addSeparator();
-    menu.addAction(theDebuggerAction(RecheckDumpers));
-    menu.addAction(theDebuggerAction(UseDumpers));
+    menu.addAction(theDebuggerAction(RecheckDebuggingHelpers));
+    menu.addAction(theDebuggerAction(UseDebuggingHelpers));
     menu.addSeparator();
     menu.addAction(theDebuggerAction(SettingsDialog));
 
diff --git a/tests/manual/gdbdebugger/script/math.js b/tests/manual/gdbdebugger/script/math.js
index 240a0f078d502c399852a23ce35e360ab5ef687b..0159f598de941f9fbd0b278e323d0b569bd3759b 100644
--- a/tests/manual/gdbdebugger/script/math.js
+++ b/tests/manual/gdbdebugger/script/math.js
@@ -30,6 +30,8 @@
 function cube(a)
 {
     var x = a * a * a;
+    x = x + 1;
+    x = x - 1;
     return x;
 }