After some library changes that otherwise pass testing, PlusEq?.fss now overflows the stack during static testing:
java.lang.StackOverflowError
at java.util.AbstractList$Itr.next(AbstractList.java:422)
at com.sun.fortress.nodes.NodeUpdateVisitor.recurOnListOfId(NodeUpdateVisitor.java:3195)
at com.sun.fortress.nodes.NodeUpdateVisitor.forAPIName(NodeUpdateVisitor.java:2745)
at com.sun.fortress.nodes.NodeUpdateVisitor.forAPIName(NodeUpdateVisitor.java:26)
at com.sun.fortress.nodes.APIName.accept(APIName.java:44)
at com.sun.fortress.nodes.NodeUpdateVisitor.recur(NodeUpdateVisitor.java:2959)
at com.sun.fortress.nodes.NodeUpdateVisitor.recurOnOptionOfAPIName(NodeUpdateVisitor.java:3574)
at com.sun.fortress.nodes.NodeUpdateVisitor.forId(NodeUpdateVisitor.java:2751)
at com.sun.fortress.nodes.NodeUpdateVisitor.forId(NodeUpdateVisitor.java:26)
at com.sun.fortress.nodes.Id.accept(Id.java:58)
at com.sun.fortress.nodes.NodeUpdateVisitor.recur(NodeUpdateVisitor.java:2959)
at com.sun.fortress.nodes.NodeUpdateVisitor.forTraitType(NodeUpdateVisitor.java:2206)
at com.sun.fortress.nodes.NodeUpdateVisitor.forTraitType(NodeUpdateVisitor.java:26)
at com.sun.fortress.nodes.TraitType.accept(TraitType.java:142)
at com.sun.fortress.compiler.typechecker.InferenceVarTranslator.canonicalizeVars(InferenceVarTranslator.java:94)
at com.sun.fortress.compiler.typechecker.TypeAnalyzer$ChildSubtypeCache.get(TypeAnalyzer.java:1108)
at com.sun.fortress.compiler.typechecker.TypeAnalyzer.sub(TypeAnalyzer.java:415)
at com.sun.fortress.compiler.typechecker.TypeAnalyzer.reduceList(TypeAnalyzer.java:913)
at com.sun.fortress.compiler.typechecker.TypeAnalyzer.reduceConjuncts(TypeAnalyzer.java:877)
at com.sun.fortress.compiler.typechecker.TypeAnalyzer.access$600(TypeAnalyzer.java:59)
at com.sun.fortress.compiler.typechecker.TypeAnalyzer$3.value(TypeAnalyzer.java:400)
at com.sun.fortress.compiler.typechecker.TypeAnalyzer$3.value(TypeAnalyzer.java:398)
at edu.rice.cs.plt.iter.MappedIterator.next(MappedIterator.java:60)
at edu.rice.cs.plt.iter.IterUtil.first(IterUtil.java:944)
at com.sun.fortress.compiler.typechecker.TypeAnalyzer.reduceList(TypeAnalyzer.java:902)
at com.sun.fortress.compiler.typechecker.TypeAnalyzer.reduceDisjuncts(TypeAnalyzer.java:888)
at com.sun.fortress.compiler.typechecker.TypeAnalyzer.mt(TypeAnalyzer.java:405)
at com.sun.fortress.compiler.typechecker.TypeAnalyzer.access$500(TypeAnalyzer.java:59)
at com.sun.fortress.compiler.typechecker.TypeAnalyzer$SubtypeHistory.meetNormal(TypeAnalyzer.java:1045)
at com.sun.fortress.compiler.typechecker.ConstraintFormula$SimpleFormula.merge(ConstraintFormula.java:190)
at com.sun.fortress.compiler.typechecker.ConstraintFormula$SimpleFormula.and(ConstraintFormula.java:119)
at com.sun.fortress.compiler.typechecker.ConstraintFormula$SimpleFormula.merge(ConstraintFormula.java:210)
at com.sun.fortress.compiler.typechecker.ConstraintFormula$SimpleFormula.and(ConstraintFormula.java:119)
I have disabled it in my local copy of StaticJUTest on Nels' advice; it's triggering a known bug. Because it's a regression I want to make sure it's ticketed and isn't lost.