Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorStephan Herrmann2018-02-11 19:20:19 +0000
committerStephan Herrmann2018-02-12 23:50:37 +0000
commit4fcf908951f1ddb31590585a98bc84a8011624c8 (patch)
tree059b77d21094ed87c5de7e3dc6b4614150cc2281
parent127db0361f72f46949293a8acbfe077dbe5bd3ea (diff)
downloadorg.eclipse.objectteams-4fcf908951f1ddb31590585a98bc84a8011624c8.tar.gz
org.eclipse.objectteams-4fcf908951f1ddb31590585a98bc84a8011624c8.tar.xz
org.eclipse.objectteams-4fcf908951f1ddb31590585a98bc84a8011624c8.zip
Backport: saw infinite loop caused by Confined not having role modifier
- detect the actual problem and raise ICE. consolidated cherry-pick of commit ac897e69aa0b96e912e2df15878953f54f47c7f5 commit 0ed58ed7a7522aae164339653e7ea3411797c971
-rw-r--r--org.eclipse.jdt.core/compiler/org/eclipse/objectteams/otdt/internal/core/compiler/control/Dependencies.java2
1 files changed, 2 insertions, 0 deletions
diff --git a/org.eclipse.jdt.core/compiler/org/eclipse/objectteams/otdt/internal/core/compiler/control/Dependencies.java b/org.eclipse.jdt.core/compiler/org/eclipse/objectteams/otdt/internal/core/compiler/control/Dependencies.java
index fb036cc75..d2d12cbca 100644
--- a/org.eclipse.jdt.core/compiler/org/eclipse/objectteams/otdt/internal/core/compiler/control/Dependencies.java
+++ b/org.eclipse.jdt.core/compiler/org/eclipse/objectteams/otdt/internal/core/compiler/control/Dependencies.java
@@ -987,6 +987,8 @@ public class Dependencies implements ITranslationStates {
&& !StateHelper.isRequiredState(nextState)) // KEEPGOING
{
StateHelper.setStateRecursive(model.getAst(), nextState, true);
+ if (model.getState() <= oldState)
+ throw new InternalCompilerError("Translation (type) does not advance past "+ITranslationStates.STATE_NAMES[oldState]); //$NON-NLS-1$
continue;
}

Back to the top