Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
Difference between revisions of "ATL Language Troubleshooter"
Line 1: | Line 1: | ||
− | == | + | =='''Trouble''' '''Cause''' '''Solution(s)'''== |
− | '''Trouble''' '''Cause''' '''Solution(s)''' | + | # '''Trouble:''' NativeOperation public static org.atl.engine.vm.nativelib.ASMNumber org.atl.engine.vm.nativelib.ASMInteger.operatorMinus(org.atl.engine.vm.StackFrame,org.atl.engine.vm.nativelib.ASMInteger,org.atl.engine.vm.nativelib.ASMNumber)<br/>'''Cause:''' You use negative integer to compare: e.g. ''if self.upper = -1 ...''<br/>'''Solutions:''' Use (0-x) operation: e.g. ''if self.upper = (0-1) ...'' or change your comparaison if it is possible: e.g. ''if self.upper < 0 ...''<br/><br/> |
− | # '''Trouble:''' NativeOperation public static org.atl.engine.vm.nativelib.ASMNumber org.atl.engine.vm.nativelib.ASMInteger.operatorMinus(org.atl.engine.vm.StackFrame,org.atl.engine.vm.nativelib.ASMInteger,org.atl.engine.vm.nativelib.ASMNumber)<br/>'''Cause:''' You use negative integer to compare: e.g. ''if self.upper = -1 ...''<br/>'''Solutions:''' Use (0-x) operation: e.g. ''if self.upper = (0-1) ...'' or change your comparaison if it is possible: e.g. ''if self.upper < 0 ...'' | + | # '''Trouble:''' ERROR: could not find operation including on Module having supertypes: [OclAny]) in a called rule<br/>'''Cause:''' Your called rule doesn't return the good type (problably any)<br/>'''Solution:''' Add a return type on your called rule by adding the '''do''' clause: e.g. |
+ | |||
+ | rule myCalledRule() { | ||
+ | to | ||
+ | out : XML!Element... | ||
+ | do { | ||
+ | out | ||
+ | } | ||
+ | } |
Revision as of 10:42, 15 May 2006
Trouble Cause Solution(s)
- Trouble: NativeOperation public static org.atl.engine.vm.nativelib.ASMNumber org.atl.engine.vm.nativelib.ASMInteger.operatorMinus(org.atl.engine.vm.StackFrame,org.atl.engine.vm.nativelib.ASMInteger,org.atl.engine.vm.nativelib.ASMNumber)
Cause: You use negative integer to compare: e.g. if self.upper = -1 ...
Solutions: Use (0-x) operation: e.g. if self.upper = (0-1) ... or change your comparaison if it is possible: e.g. if self.upper < 0 ... - Trouble: ERROR: could not find operation including on Module having supertypes: [OclAny]) in a called rule
Cause: Your called rule doesn't return the good type (problably any)
Solution: Add a return type on your called rule by adding the do clause: e.g.
rule myCalledRule() { to out : XML!Element... do { out } }