Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEugene Tarassov2012-01-03 18:47:00 +0000
committerEugene Tarassov2012-01-03 18:47:00 +0000
commitf48951b27a299a3ca4fc7a61725b6894136a16c2 (patch)
treeddd65f27379a8ff5ccd49c40d19ed352825d7972
parent10dcab5c4a6a6a224a79ec7b8ea9c513ffe8cd29 (diff)
downloadorg.eclipse.tcf-f48951b27a299a3ca4fc7a61725b6894136a16c2.tar.gz
org.eclipse.tcf-f48951b27a299a3ca4fc7a61725b6894136a16c2.tar.xz
org.eclipse.tcf-f48951b27a299a3ca4fc7a61725b6894136a16c2.zip
TCF Debugger: added type name display for "pointer to member".
-rw-r--r--plugins/org.eclipse.tcf.debug.ui/src/org/eclipse/tcf/internal/debug/ui/model/TCFNodeExpression.java21
1 files changed, 19 insertions, 2 deletions
diff --git a/plugins/org.eclipse.tcf.debug.ui/src/org/eclipse/tcf/internal/debug/ui/model/TCFNodeExpression.java b/plugins/org.eclipse.tcf.debug.ui/src/org/eclipse/tcf/internal/debug/ui/model/TCFNodeExpression.java
index 3ade43955..e7f28dde6 100644
--- a/plugins/org.eclipse.tcf.debug.ui/src/org/eclipse/tcf/internal/debug/ui/model/TCFNodeExpression.java
+++ b/plugins/org.eclipse.tcf.debug.ui/src/org/eclipse/tcf/internal/debug/ui/model/TCFNodeExpression.java
@@ -299,9 +299,9 @@ public class TCFNodeExpression extends TCFNode implements IElementEditor, ICastT
return false;
}
@Override
- public void cancel() {
+ public void reset() {
if (isValid() && getData() != null) getData().dispose();
- super.cancel();
+ super.reset();
}
@Override
public void dispose() {
@@ -757,6 +757,22 @@ public class TCFNodeExpression extends TCFNode implements IElementEditor, ICastT
if ((flags & ISymbols.SYM_FLAG_REFERENCE) != 0) s = "&";
get_base_type = true;
break;
+ case member_pointer:
+ {
+ String id = type_symbol.getContainerID();
+ if (id != null) {
+ TCFDataCache<ISymbols.Symbol> cls_cache = model.getSymbolInfoCache(id);
+ if (!cls_cache.validate(done)) return false;
+ ISymbols.Symbol cls_data = cls_cache.getData();
+ if (cls_data != null) {
+ String cls_name = cls_data.getName();
+ if (cls_name != null) s = cls_name + "::*";
+ }
+ }
+ if (s == null) s = "::*";
+ }
+ get_base_type = true;
+ break;
case array:
s = "[" + type_symbol.getLength() + "]";
get_base_type = true;
@@ -1236,6 +1252,7 @@ public class TCFNodeExpression extends TCFNode implements IElementEditor, ICastT
break;
case pointer:
case function:
+ case member_pointer:
if (level == 0) {
bf.append("Oct: ", SWT.BOLD);
bf.append(toNumberString(8, type_class, data, offs, size, big_endian));

Back to the top