diff options
author | Marc Khouzam | 2012-12-18 18:58:08 +0000 |
---|---|---|
committer | Marc Khouzam | 2012-12-18 19:29:18 +0000 |
commit | cd7ffb2dbfc4ab4949fd9a57410762bbdc4f4b09 (patch) | |
tree | c13bc385fecc58b009292d7147093c6d5290daf4 /dsf | |
parent | 88e488b1ff7aa7dcfb3b0cc1d49ae0863b9a6933 (diff) | |
download | org.eclipse.cdt-cd7ffb2dbfc4ab4949fd9a57410762bbdc4f4b09.tar.gz org.eclipse.cdt-cd7ffb2dbfc4ab4949fd9a57410762bbdc4f4b09.tar.xz org.eclipse.cdt-cd7ffb2dbfc4ab4949fd9a57410762bbdc4f4b09.zip |
Bug 394408: Support enhanced-expressions for local variables. This
includes special handling for array indices. Furthermore, we now
require the '=' prefix for all glob-pattern expressions, including
registers.
Change-Id: If929d539b80d282df383c44d1487611fda928613
Reviewed-on: https://git.eclipse.org/r/8881
Reviewed-by: Marc Khouzam <marc.khouzam@ericsson.com>
IP-Clean: Marc Khouzam <marc.khouzam@ericsson.com>
Tested-by: Marc Khouzam <marc.khouzam@ericsson.com>
Diffstat (limited to 'dsf')
3 files changed, 26 insertions, 4 deletions
diff --git a/dsf/org.eclipse.cdt.dsf.ui/src/org/eclipse/cdt/dsf/debug/internal/ui/viewmodel/DsfCastToTypeSupport.java b/dsf/org.eclipse.cdt.dsf.ui/src/org/eclipse/cdt/dsf/debug/internal/ui/viewmodel/DsfCastToTypeSupport.java index 458f1829e1c..380e2ed68cf 100644 --- a/dsf/org.eclipse.cdt.dsf.ui/src/org/eclipse/cdt/dsf/debug/internal/ui/viewmodel/DsfCastToTypeSupport.java +++ b/dsf/org.eclipse.cdt.dsf.ui/src/org/eclipse/cdt/dsf/debug/internal/ui/viewmodel/DsfCastToTypeSupport.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2010 Nokia and others. + * Copyright (c) 2010, 2012 Nokia and others. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at @@ -7,6 +7,8 @@ * * Contributors: * Nokia - Initial API and implementation + * Marc Khouzam (Ericsson) - Turn off casting for expression-group or + * pattern expressions (bug 394408) *******************************************************************************/ package org.eclipse.cdt.dsf.debug.internal.ui.viewmodel; @@ -25,6 +27,7 @@ import org.eclipse.cdt.dsf.datamodel.DMContexts; import org.eclipse.cdt.dsf.debug.service.IExpressions.IExpressionChangedDMEvent; import org.eclipse.cdt.dsf.debug.service.IExpressions.IExpressionDMContext; import org.eclipse.cdt.dsf.debug.service.IExpressions.IExpressionDMData; +import org.eclipse.cdt.dsf.debug.service.IExpressions.IExpressionGroupDMContext; import org.eclipse.cdt.dsf.debug.service.IExpressions.IIndexedPartitionDMContext; import org.eclipse.cdt.dsf.debug.service.IExpressions2; import org.eclipse.cdt.dsf.debug.service.IExpressions2.CastInfo; @@ -91,9 +94,11 @@ public class DsfCastToTypeSupport { } private boolean isValid() { - if (exprDMC instanceof IIndexedPartitionDMContext) + if (exprDMC instanceof IIndexedPartitionDMContext || + exprDMC instanceof IExpressionGroupDMContext) { return false; - + } + TestExpressions2Query query = new TestExpressions2Query(); dmvmProvider.getSession().getExecutor().execute(query); diff --git a/dsf/org.eclipse.cdt.dsf/META-INF/MANIFEST.MF b/dsf/org.eclipse.cdt.dsf/META-INF/MANIFEST.MF index 3baade410e9..91aa88e256d 100644 --- a/dsf/org.eclipse.cdt.dsf/META-INF/MANIFEST.MF +++ b/dsf/org.eclipse.cdt.dsf/META-INF/MANIFEST.MF @@ -3,7 +3,7 @@ Bundle-ManifestVersion: 2 Bundle-Name: %pluginName Bundle-Vendor: %providerName Bundle-SymbolicName: org.eclipse.cdt.dsf;singleton:=true -Bundle-Version: 2.3.0.qualifier +Bundle-Version: 2.4.0.qualifier Bundle-Activator: org.eclipse.cdt.dsf.internal.DsfPlugin Bundle-Localization: plugin Require-Bundle: org.eclipse.core.runtime, diff --git a/dsf/org.eclipse.cdt.dsf/src/org/eclipse/cdt/dsf/debug/service/IExpressions.java b/dsf/org.eclipse.cdt.dsf/src/org/eclipse/cdt/dsf/debug/service/IExpressions.java index fac33c4a85c..a076ca5804a 100644 --- a/dsf/org.eclipse.cdt.dsf/src/org/eclipse/cdt/dsf/debug/service/IExpressions.java +++ b/dsf/org.eclipse.cdt.dsf/src/org/eclipse/cdt/dsf/debug/service/IExpressions.java @@ -8,6 +8,7 @@ * Contributors: * Wind River Systems - initial API and implementation * Ericsson - Update for GDB/MI + * Marc Khouzam (Ericsson) - Added expression-groups (bug 394408) *******************************************************************************/ package org.eclipse.cdt.dsf.debug.service; @@ -67,6 +68,22 @@ public interface IExpressions extends IFormattedValues { public int getLength(); } + /** + * Represents a group of expressions. A group of expressions is a list of + * possibly unrelated expressions which are somehow described by an + * expression-group string. + * + * Examples of expression-groups that the service could choose to support are: + * "myVar1; myVar2" + * "=myVar*" + * + * The sub-expressions of an expression-group are the individual expressions + * making up this group. + * + * @since 2.4 + */ + public interface IExpressionGroupDMContext extends IExpressionDMContext {} + /** * The address and size of an expression. */ |