StoEx parser does not properly register faulty expression

Description

Max ( 35374 * 10 , 60 * 196 * 2375646 + 60 * 196 * 13697006 ) / loopSize.VALUE is registered as a correct term by the StoEx parser. However, when evaluated, the term cannot be evaluated due to the extra space symbol before loopSize.VALUE.
loopSize hereby is defined as part of a Variable Usage's VariableReference in the Usage Model.
Max ( 35374 * 10 , 60 * 196 * 2375646 + 60 * 196 * 13697006 )/loopSize.VALUE works fine.
Max ( 35374 * 10 , 60 * 196 * 2375646 + 60 * 196 * 13697006 )/ 100 is correctly reported as being erroneous by the parser.

Environment

None

Activity

Show:
Matthias Becker
May 15, 2015, 3:21 PM

Rolled back the old StoEx version, since it seems a blocker for the new Palladio release.

Matthias Becker
May 13, 2015, 11:31 PM
Edited

I am not familiar enough with StoEx Xtext implementation. Not sure I can fix this.

Christian Stier
May 13, 2015, 6:18 PM

Example from Loadbalancer:
Caused by: java.lang.RuntimeException: Architecture specification incomplete. Stackframe is missing id search_type.VALUE
Available IDs are <search_type.VALUE>

Christian Stier
May 13, 2015, 5:51 PM

Same issue occurs for the execution of the CloudScale analyzer project example and all the *.VALUE comparisons in it.

Christian Stier
April 24, 2015, 2:28 PM

The same thing also happens when parsing the StoExes in conditional branches:
Stackframe is missing id isCached.BYTESIZE
Available IDs are <FileSizeDistribution.BYTESIZE> <isCached.BYTESIZE>
On parsing "isCached.BYTESIZE == 0".
Note that is worked with the previous version of StoEx

Fixed

Assignee

Matthias Becker

Reporter

Christian Stier