From 5dee577e8a05ca286417b3f10b4dbfa4737af5c0 Mon Sep 17 00:00:00 2001 From: Doug Schaefer Date: Sat, 16 Apr 2005 15:09:03 +0000 Subject: [PATCH] Tightened up the handling of EOC in sizeof and fixed a failed test. --- .../core/dom/parser/cpp/GNUCPPSourceParser.java | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/GNUCPPSourceParser.java b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/GNUCPPSourceParser.java index 36ee6ed06f3..3c5a4bc5f9d 100644 --- a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/GNUCPPSourceParser.java +++ b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/GNUCPPSourceParser.java @@ -1305,10 +1305,16 @@ public class GNUCPPSourceParser extends AbstractGNUSourceCodeParser { try { consume(IToken.tLPAREN); typeId = typeId(true, false); - if (LT(1) == IToken.tRPAREN) + switch (LT(1)) { + case IToken.tRPAREN: lastOffset = consume(IToken.tRPAREN).getEndOffset(); - else - lastOffset = Integer.MAX_VALUE; // tEOC + break; + case IToken.tEOC: + lastOffset = Integer.MAX_VALUE; + break; + default: + throw backtrack; + } } catch (BacktrackException bt) { backup(mark); unaryExpression = unaryExpression();