Changes between Version 6 and Version 7 of AST
- Timestamp:
- 04/18/11 17:16:34 (15 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
AST
v6 v7 54 54 * sequence of elements 55 55 * variable definition 56 * scope 56 * scope (global, input/output, ...) 57 57 * name (together with scope, this uniquely identifies the variable) 58 58 * type … … 72 72 * statements 73 73 * labels: set of labels associated to this statement. The labels all correspond to the point of control just before the statement. 74 * assign: lhs:=rhs; Note statements like x+=a, x*=a will be immediately translated to x:=x+1, x:=x*a, etc. 75 * lhs: LeftHandSideExpression 76 * rhs: expression 77 * assert 74 * assert: this could come from a program language assert or a TASS pragma 78 75 * expr: Expression 79 * assume 76 * assume: these come from TASS pragmas 80 77 * expr: Expression 81 78 * pragma (any kind of pragma, represented as just a string) 82 79 * string: this is an initial form, where the text of the pragma is uninterpreted. After a certain processing stage, TASS pragmas will be parsed and replaced with more specific nodes. Non-tass pragmas will just remain as strings and will be ignored by TASS. 83 * assert, assume, invariant, input, output, ...84 80 * switch statement: this can be used to model C's switch 85 81 * expression: expression that is evaluated … … 88 84 * statement (or something like that) 89 85 * if-then, if-then-else 90 * while 86 * while: loop. associated invariant (derived from TASS invariant pragma) 91 87 * for 92 * until88 * do...until 93 89 * break 94 90 * continue
