Community
Participate
Working Groups
Hi The type of conditions are not checked during the compilation and it produces cryptic errors @ runtime. For instance, simple [template public gen(e : Class)] [if ('')] [/if] [/template] or [template public gen(e : Class)] [if (ownedElement)] [/if] [/template] are Ok @ compile-time but produces this stacktrace (it did not found any writers in its List): Exception in thread "main" java.util.NoSuchElementException at java.util.LinkedList.getLast(LinkedList.java:122) at org.eclipse.acceleo.engine.internal.evaluation.AcceleoEvaluationContext.append(AcceleoEvaluationContext.java:167) at org.eclipse.acceleo.engine.internal.evaluation.AcceleoEvaluationVisitor.append(AcceleoEvaluationVisitor.java:217) at org.eclipse.acceleo.engine.internal.evaluation.AcceleoEvaluationVisitor.delegateAppend(AcceleoEvaluationVisitor.java:1091) at org.eclipse.acceleo.engine.internal.evaluation.AcceleoEvaluationVisitor.visitExpression(AcceleoEvaluationVisitor.java:929) at org.eclipse.acceleo.engine.internal.evaluation.AcceleoEvaluationVisitor.visitAcceleoTemplate(AcceleoEvaluationVisitor.java:771) at org.eclipse.acceleo.engine.internal.evaluation.AcceleoEvaluationVisitor.switchExpression(AcceleoEvaluationVisitor.java:1456) at org.eclipse.acceleo.engine.internal.evaluation.AcceleoEvaluationVisitor.visitExpression(AcceleoEvaluationVisitor.java:902) at org.eclipse.acceleo.engine.internal.evaluation.AcceleoEvaluationVisitor.visitAcceleoTemplateInvocation(AcceleoEvaluationVisitor.java:822) at org.eclipse.acceleo.engine.internal.evaluation.AcceleoEvaluationVisitor.switchExpression(AcceleoEvaluationVisitor.java:1483) at org.eclipse.acceleo.engine.internal.evaluation.AcceleoEvaluationVisitor.visitExpression(AcceleoEvaluationVisitor.java:902) at org.eclipse.acceleo.engine.internal.evaluation.AcceleoEvaluationVisitor.visitAcceleoTemplate(AcceleoEvaluationVisitor.java:771) Hope this helps ;) Regards, Mikael
Created attachment 173300 [details] Patch In a template, if the condition of the "if" is not a boolean, an error appears in the editor.
Created attachment 173535 [details] Patch v2 Refactoring of the previous patch.
Patch applied on HEAD, will also be available on maintenance
Forgot to close