mirror of
https://github.com/eclipse-cdt/cdt
synced 2025-08-22 15:53:58 +02:00
Patch for Devin Steffler.
FIXED 87649 - [Lengths] ICASTDesignatedInitializer's length does not include the length of the IASTInitializerExpression
This commit is contained in:
parent
4b7952f19c
commit
122a949f09
2 changed files with 7 additions and 2 deletions
|
@ -76,6 +76,7 @@ import org.eclipse.cdt.core.dom.ast.cpp.ICPPASTCastExpression;
|
|||
import org.eclipse.cdt.core.dom.ast.cpp.ICPPASTPointerToMember;
|
||||
import org.eclipse.cdt.core.dom.ast.cpp.ICPPClassType;
|
||||
import org.eclipse.cdt.core.parser.ParserLanguage;
|
||||
import org.eclipse.cdt.internal.core.dom.parser.ASTNode;
|
||||
import org.eclipse.cdt.internal.core.dom.parser.c.CFunction;
|
||||
import org.eclipse.cdt.internal.core.dom.parser.c.CVisitor;
|
||||
import org.eclipse.cdt.internal.core.parser.ParserException;
|
||||
|
@ -1872,6 +1873,10 @@ public class AST2Tests extends AST2BaseTest {
|
|||
.getInitializer()).getInitializers();
|
||||
IASTName name_y2 = ((ICASTFieldDesignator) ((ICASTDesignatedInitializer) initializers1[0])
|
||||
.getDesignators()[0]).getName();
|
||||
|
||||
// test bug 87649
|
||||
assertEquals(((ASTNode)(ICASTDesignatedInitializer) initializers1[0]).getLength(), 7);
|
||||
|
||||
IASTName name_x2 = ((ICASTFieldDesignator) ((ICASTDesignatedInitializer) initializers1[1])
|
||||
.getDesignators()[0]).getName();
|
||||
|
||||
|
|
|
@ -172,7 +172,7 @@ public class GNUCSourceParser extends AbstractGNUSourceCodeParser {
|
|||
ICASTDesignatedInitializer desigInitializer = createDesignatorInitializer();
|
||||
((CASTNode) desigInitializer).setOffsetAndLength(
|
||||
((CASTNode) newDesignators.get(0)).getOffset(),
|
||||
((CASTNode) newDesignators.get(0)).getLength());
|
||||
((CASTNode)initializer).getOffset() + ((CASTNode)initializer).getLength() - ((CASTNode) newDesignators.get(0)).getOffset());
|
||||
for (int i = 0; i < newDesignators.size(); ++i) {
|
||||
ICASTDesignator d = (ICASTDesignator) newDesignators
|
||||
.get(i);
|
||||
|
|
Loading…
Add table
Reference in a new issue