summaryrefslogtreecommitdiff
path: root/src/plugins/debugger/namedemangler/demanglerexceptions.h
diff options
context:
space:
mode:
authorChristian Kandeler <christian.kandeler@nokia.com>2012-08-10 16:46:38 +0200
committerChristian Kandeler <christian.kandeler@nokia.com>2012-08-13 12:30:10 +0200
commit26c4329f74b732a397c37b5c416a7ecec407dece (patch)
tree81af473ae8cb412a7617ade52b259be45dd90fc8 /src/plugins/debugger/namedemangler/demanglerexceptions.h
parent2dc005cae73b8268202956587ba5fbd38247679f (diff)
downloadqt-creator-26c4329f74b732a397c37b5c416a7ecec407dece.tar.gz
Name demangler: Fix reference collapsing.
Change-Id: I7bcf1ace346ffcb5e05242f6cedfc5439c97fff9 Reviewed-by: Christian Kandeler <christian.kandeler@nokia.com>
Diffstat (limited to 'src/plugins/debugger/namedemangler/demanglerexceptions.h')
-rw-r--r--src/plugins/debugger/namedemangler/demanglerexceptions.h7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/plugins/debugger/namedemangler/demanglerexceptions.h b/src/plugins/debugger/namedemangler/demanglerexceptions.h
index 7c35edcba2..815801085e 100644
--- a/src/plugins/debugger/namedemangler/demanglerexceptions.h
+++ b/src/plugins/debugger/namedemangler/demanglerexceptions.h
@@ -31,6 +31,7 @@
#define DEMANGLEREXCEPTIONS_H
#include <QtGlobal>
+#include <QSharedPointer>
#include <QString>
namespace Debugger {
@@ -64,10 +65,10 @@ public:
} \
} while (0)
-template <typename T> T *demanglerCast(ParseTreeNode *node, const QString &func,
- const QString &file, int line)
+template <typename T> QSharedPointer<T> demanglerCast(const QSharedPointer<ParseTreeNode> &node,
+ const QString &func, const QString &file, int line)
{
- T * const out = dynamic_cast<T *>(node);
+ const QSharedPointer<T> out = node.dynamicCast<T>();
if (!out)
throw InternalDemanglerException(func, file, line);
return out;