diff --git a/share/qtcreator/debugger/lldbbridge.py b/share/qtcreator/debugger/lldbbridge.py
index 500c0477a8dbe547ba1c6dba140b7303701f511e..a22d7b850a19568c0409413629b80f3367ec4f39 100644
--- a/share/qtcreator/debugger/lldbbridge.py
+++ b/share/qtcreator/debugger/lldbbridge.py
@@ -579,11 +579,17 @@ class Dumper(DumperBase):
 
     def createPointerValue(self, address, pointeeType):
         addr = int(address) & 0xFFFFFFFFFFFFFFFF
-        return self.context.CreateValueFromAddress(None, addr, pointeeType).AddressOf()
+        sbaddr = lldb.SBAddress(addr, self.target)
+        # Any type.
+        # FIXME: This can be replaced with self.target.CreateValueFromExpression
+        # as soon as we drop support for lldb builds not having that (~Xcode 6.1)
+        dummy = self.target.CreateValueFromAddress('@', sbaddr, self.target.FindFirstType('char'))
+        return dummy.CreateValueFromExpression('', '(%s*)%s' % (pointeeType, addr))
 
     def createValue(self, address, referencedType):
         addr = int(address) & 0xFFFFFFFFFFFFFFFF
-        return self.context.CreateValueFromAddress(None, addr, referencedType)
+        sbaddr = lldb.SBAddress(addr, self.target)
+        return self.target.CreateValueFromAddress(None, sbaddr, referencedType)
 
     def childRange(self):
         if self.currentMaxNumChild is None: